[INFO] fetching crate rustep 0.1.2... [INFO] testing rustep-0.1.2 against try#03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 for pr-74409 [INFO] extracting crate rustep 0.1.2 into /workspace/builds/worker-9/source [INFO] validating manifest of crates.io crate rustep 0.1.2 on toolchain 03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate rustep 0.1.2 [INFO] finished tweaking crates.io crate rustep 0.1.2 [INFO] tweaked toml for crates.io crate rustep 0.1.2 written to /workspace/builds/worker-9/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded enumflags v0.3.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 67e1ff36d673777cb88295929d213d5d0e84041955bd7f1e1516b38edb945ce0 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "67e1ff36d673777cb88295929d213d5d0e84041955bd7f1e1516b38edb945ce0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "67e1ff36d673777cb88295929d213d5d0e84041955bd7f1e1516b38edb945ce0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "67e1ff36d673777cb88295929d213d5d0e84041955bd7f1e1516b38edb945ce0", kill_on_drop: false }` [INFO] [stdout] 67e1ff36d673777cb88295929d213d5d0e84041955bd7f1e1516b38edb945ce0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2a75309baa12be6cf7a8857b7ab721394e4a5d6449f4b0f20d1d8b229af12275 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "2a75309baa12be6cf7a8857b7ab721394e4a5d6449f4b0f20d1d8b229af12275", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.73 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling proc-macro2 v1.0.19 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling syn v1.0.35 [INFO] [stderr] Compiling rustc-serialize v0.3.24 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling gimli v0.22.0 [INFO] [stderr] Compiling adler v0.2.3 [INFO] [stderr] Compiling object v0.20.0 [INFO] [stderr] Compiling rustc-demangle v0.1.16 [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling enumflags v0.3.2 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling num-iter v0.1.41 [INFO] [stderr] Compiling proc-macro2 v0.2.3 [INFO] [stderr] Compiling miniz_oxide v0.4.0 [INFO] [stderr] Compiling quote v0.4.2 [INFO] [stderr] Compiling syn v0.12.15 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling memchr v1.0.2 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling nom v3.2.1 [INFO] [stderr] Compiling num-bigint v0.1.44 [INFO] [stderr] Compiling num-complex v0.1.43 [INFO] [stderr] Compiling num-rational v0.1.42 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling addr2line v0.13.0 [INFO] [stderr] Compiling backtrace v0.3.50 [INFO] [stderr] Compiling synstructure v0.12.4 [INFO] [stderr] Compiling enumflags_derive v0.4.1 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling rustep v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/format/elf.rs:1082:1 [INFO] [stdout] | [INFO] [stdout] 1082 | /// Elf class means to differ in arch, we must get that ahead to determine which type to be used. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/format/elf.rs:1299:1 [INFO] [stdout] | [INFO] [stdout] 1299 | /// Parses a single elf program table, 32-bit version [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:50:1 [INFO] [stdout] | [INFO] [stdout] 50 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/error.rs:44:32 [INFO] [stdout] | [INFO] [stdout] 44 | fn cause(&self) -> Option<&Fail> { [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TryInto` [INFO] [stdout] --> src/format/elf.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | TryInto, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SegmentFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(proc_macro_derive_resolution_fallback)]` on by default [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SegmentFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SectionFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:111:10 [INFO] [stdout] | [INFO] [stdout] 111 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:183:24 [INFO] [stdout] | [INFO] [stdout] 183 | fn shdr(&self) -> &ElfSectionHeader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:215:24 [INFO] [stdout] | [INFO] [stdout] 215 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:237:24 [INFO] [stdout] | [INFO] [stdout] 237 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:317:24 [INFO] [stdout] | [INFO] [stdout] 317 | fn phdr(&self) -> &ElfSegmentHeader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:345:24 [INFO] [stdout] | [INFO] [stdout] 345 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:363:24 [INFO] [stdout] | [INFO] [stdout] 363 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:698:26 [INFO] [stdout] | [INFO] [stdout] 698 | fn header(&self) -> &ElfHeader; [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:700:32 [INFO] [stdout] | [INFO] [stdout] 700 | fn segments(&self) -> Vec<&ElfSegment>; [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:702:32 [INFO] [stdout] | [INFO] [stdout] 702 | fn sections(&self) -> Vec<&ElfSection>; [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:704:46 [INFO] [stdout] | [INFO] [stdout] 704 | fn section(&self, name: &str) -> Option<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:733:26 [INFO] [stdout] | [INFO] [stdout] 733 | fn header(&self) -> &ElfHeader { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:737:32 [INFO] [stdout] | [INFO] [stdout] 737 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:740:29 [INFO] [stdout] | [INFO] [stdout] 740 | v.push(elem as &ElfSegment); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:746:32 [INFO] [stdout] | [INFO] [stdout] 746 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:749:29 [INFO] [stdout] | [INFO] [stdout] 749 | v.push(elem as &ElfSection); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:757:26 [INFO] [stdout] | [INFO] [stdout] 757 | fn header(&self) -> &ElfHeader { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:764:29 [INFO] [stdout] | [INFO] [stdout] 764 | v.push(elem as &ElfSegment); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:770:32 [INFO] [stdout] | [INFO] [stdout] 770 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:773:29 [INFO] [stdout] | [INFO] [stdout] 773 | v.push(elem as &ElfSection); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:780:46 [INFO] [stdout] | [INFO] [stdout] 780 | impl<'a> TryFrom<&'a Executable<'a>> for &'a ElfFormat { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:785:54 [INFO] [stdout] | [INFO] [stdout] 785 | fn try_from(value: &'a Executable) -> Result<&'a ElfFormat, Error> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:787:54 [INFO] [stdout] | [INFO] [stdout] 787 | Executable::Elf32(ref elf) => Ok(elf as &ElfFormat), [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:788:54 [INFO] [stdout] | [INFO] [stdout] 788 | Executable::Elf64(ref elf) => Ok(elf as &ElfFormat), [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/format/elf.rs:789:13 [INFO] [stdout] | [INFO] [stdout] 789 | _ => Err(RustepErrorKind::NotElf)?, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/format/elf.rs:869:25 [INFO] [stdout] | [INFO] [stdout] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] ... [INFO] [stdout] 888 | / define_elf_parser!{ [INFO] [stdout] 889 | | parse_elf32, [INFO] [stdout] 890 | | parse_elf_header32, [INFO] [stdout] 891 | | parse_elf_section_header32, [INFO] [stdout] ... | [INFO] [stdout] 895 | | Elf32 [INFO] [stdout] 896 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/format/elf.rs:869:25 [INFO] [stdout] | [INFO] [stdout] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] ... [INFO] [stdout] 897 | / define_elf_parser!{ [INFO] [stdout] 898 | | parse_elf64, [INFO] [stdout] 899 | | parse_elf_header64, [INFO] [stdout] 900 | | parse_elf_section_header64, [INFO] [stdout] ... | [INFO] [stdout] 904 | | Elf64 [INFO] [stdout] 905 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/format/elf.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | mem::replace(&mut s.name, new_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 888 | / define_elf_parser!{ [INFO] [stdout] 889 | | parse_elf32, [INFO] [stdout] 890 | | parse_elf_header32, [INFO] [stdout] 891 | | parse_elf_section_header32, [INFO] [stdout] ... | [INFO] [stdout] 895 | | Elf32 [INFO] [stdout] 896 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/format/elf.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | mem::replace(&mut s.name, new_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 897 | / define_elf_parser!{ [INFO] [stdout] 898 | | parse_elf64, [INFO] [stdout] 899 | | parse_elf_header64, [INFO] [stdout] 900 | | parse_elf_section_header64, [INFO] [stdout] ... | [INFO] [stdout] 904 | | Elf64 [INFO] [stdout] 905 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 39.21s [INFO] running `Command { std: "docker" "inspect" "2a75309baa12be6cf7a8857b7ab721394e4a5d6449f4b0f20d1d8b229af12275", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2a75309baa12be6cf7a8857b7ab721394e4a5d6449f4b0f20d1d8b229af12275", kill_on_drop: false }` [INFO] [stdout] 2a75309baa12be6cf7a8857b7ab721394e4a5d6449f4b0f20d1d8b229af12275 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] ff3d3465a6539f3f8c576fdd3372a36f852e692474452cad13fa3274f382158a [INFO] running `Command { std: "docker" "start" "-a" "ff3d3465a6539f3f8c576fdd3372a36f852e692474452cad13fa3274f382158a", kill_on_drop: false }` [INFO] [stderr] Compiling rustep v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/format/elf.rs:1082:1 [INFO] [stdout] | [INFO] [stdout] 1082 | /// Elf class means to differ in arch, we must get that ahead to determine which type to be used. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/format/elf.rs:1299:1 [INFO] [stdout] | [INFO] [stdout] 1299 | /// Parses a single elf program table, 32-bit version [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:50:1 [INFO] [stdout] | [INFO] [stdout] 50 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/error.rs:44:32 [INFO] [stdout] | [INFO] [stdout] 44 | fn cause(&self) -> Option<&Fail> { [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TryInto` [INFO] [stdout] --> src/format/elf.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | TryInto, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SegmentFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(proc_macro_derive_resolution_fallback)]` on by default [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SegmentFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SectionFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:111:10 [INFO] [stdout] | [INFO] [stdout] 111 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:183:24 [INFO] [stdout] | [INFO] [stdout] 183 | fn shdr(&self) -> &ElfSectionHeader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:215:24 [INFO] [stdout] | [INFO] [stdout] 215 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:237:24 [INFO] [stdout] | [INFO] [stdout] 237 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:317:24 [INFO] [stdout] | [INFO] [stdout] 317 | fn phdr(&self) -> &ElfSegmentHeader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:345:24 [INFO] [stdout] | [INFO] [stdout] 345 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:363:24 [INFO] [stdout] | [INFO] [stdout] 363 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:698:26 [INFO] [stdout] | [INFO] [stdout] 698 | fn header(&self) -> &ElfHeader; [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:700:32 [INFO] [stdout] | [INFO] [stdout] 700 | fn segments(&self) -> Vec<&ElfSegment>; [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:702:32 [INFO] [stdout] | [INFO] [stdout] 702 | fn sections(&self) -> Vec<&ElfSection>; [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:704:46 [INFO] [stdout] | [INFO] [stdout] 704 | fn section(&self, name: &str) -> Option<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:733:26 [INFO] [stdout] | [INFO] [stdout] 733 | fn header(&self) -> &ElfHeader { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:737:32 [INFO] [stdout] | [INFO] [stdout] 737 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:740:29 [INFO] [stdout] | [INFO] [stdout] 740 | v.push(elem as &ElfSegment); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:746:32 [INFO] [stdout] | [INFO] [stdout] 746 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:749:29 [INFO] [stdout] | [INFO] [stdout] 749 | v.push(elem as &ElfSection); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:757:26 [INFO] [stdout] | [INFO] [stdout] 757 | fn header(&self) -> &ElfHeader { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:764:29 [INFO] [stdout] | [INFO] [stdout] 764 | v.push(elem as &ElfSegment); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:770:32 [INFO] [stdout] | [INFO] [stdout] 770 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:773:29 [INFO] [stdout] | [INFO] [stdout] 773 | v.push(elem as &ElfSection); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:780:46 [INFO] [stdout] | [INFO] [stdout] 780 | impl<'a> TryFrom<&'a Executable<'a>> for &'a ElfFormat { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:785:54 [INFO] [stdout] | [INFO] [stdout] 785 | fn try_from(value: &'a Executable) -> Result<&'a ElfFormat, Error> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:787:54 [INFO] [stdout] | [INFO] [stdout] 787 | Executable::Elf32(ref elf) => Ok(elf as &ElfFormat), [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:788:54 [INFO] [stdout] | [INFO] [stdout] 788 | Executable::Elf64(ref elf) => Ok(elf as &ElfFormat), [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/format/elf.rs:789:13 [INFO] [stdout] | [INFO] [stdout] 789 | _ => Err(RustepErrorKind::NotElf)?, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/format/elf.rs:869:25 [INFO] [stdout] | [INFO] [stdout] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] ... [INFO] [stdout] 888 | / define_elf_parser!{ [INFO] [stdout] 889 | | parse_elf32, [INFO] [stdout] 890 | | parse_elf_header32, [INFO] [stdout] 891 | | parse_elf_section_header32, [INFO] [stdout] ... | [INFO] [stdout] 895 | | Elf32 [INFO] [stdout] 896 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/format/elf.rs:869:25 [INFO] [stdout] | [INFO] [stdout] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] ... [INFO] [stdout] 897 | / define_elf_parser!{ [INFO] [stdout] 898 | | parse_elf64, [INFO] [stdout] 899 | | parse_elf_header64, [INFO] [stdout] 900 | | parse_elf_section_header64, [INFO] [stdout] ... | [INFO] [stdout] 904 | | Elf64 [INFO] [stdout] 905 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/format/elf.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | mem::replace(&mut s.name, new_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 888 | / define_elf_parser!{ [INFO] [stdout] 889 | | parse_elf32, [INFO] [stdout] 890 | | parse_elf_header32, [INFO] [stdout] 891 | | parse_elf_section_header32, [INFO] [stdout] ... | [INFO] [stdout] 895 | | Elf32 [INFO] [stdout] 896 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/format/elf.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | mem::replace(&mut s.name, new_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 897 | / define_elf_parser!{ [INFO] [stdout] 898 | | parse_elf64, [INFO] [stdout] 899 | | parse_elf_header64, [INFO] [stdout] 900 | | parse_elf_section_header64, [INFO] [stdout] ... | [INFO] [stdout] 904 | | Elf64 [INFO] [stdout] 905 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/format/elf.rs:1082:1 [INFO] [stdout] | [INFO] [stdout] 1082 | /// Elf class means to differ in arch, we must get that ahead to determine which type to be used. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/format/elf.rs:1299:1 [INFO] [stdout] | [INFO] [stdout] 1299 | /// Parses a single elf program table, 32-bit version [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:50:1 [INFO] [stdout] | [INFO] [stdout] 50 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/error.rs:44:32 [INFO] [stdout] | [INFO] [stdout] 44 | fn cause(&self) -> Option<&Fail> { [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SegmentFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(proc_macro_derive_resolution_fallback)]` on by default [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SegmentFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot find type `SectionFlag` in this scope [INFO] [stdout] --> src/format/elf.rs:111:10 [INFO] [stdout] | [INFO] [stdout] 111 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stdout] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:183:24 [INFO] [stdout] | [INFO] [stdout] 183 | fn shdr(&self) -> &ElfSectionHeader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:215:24 [INFO] [stdout] | [INFO] [stdout] 215 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:237:24 [INFO] [stdout] | [INFO] [stdout] 237 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:317:24 [INFO] [stdout] | [INFO] [stdout] 317 | fn phdr(&self) -> &ElfSegmentHeader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:345:24 [INFO] [stdout] | [INFO] [stdout] 345 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:363:24 [INFO] [stdout] | [INFO] [stdout] 363 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:698:26 [INFO] [stdout] | [INFO] [stdout] 698 | fn header(&self) -> &ElfHeader; [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:700:32 [INFO] [stdout] | [INFO] [stdout] 700 | fn segments(&self) -> Vec<&ElfSegment>; [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:702:32 [INFO] [stdout] | [INFO] [stdout] 702 | fn sections(&self) -> Vec<&ElfSection>; [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:704:46 [INFO] [stdout] | [INFO] [stdout] 704 | fn section(&self, name: &str) -> Option<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:733:26 [INFO] [stdout] | [INFO] [stdout] 733 | fn header(&self) -> &ElfHeader { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:737:32 [INFO] [stdout] | [INFO] [stdout] 737 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:740:29 [INFO] [stdout] | [INFO] [stdout] 740 | v.push(elem as &ElfSegment); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:746:32 [INFO] [stdout] | [INFO] [stdout] 746 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:749:29 [INFO] [stdout] | [INFO] [stdout] 749 | v.push(elem as &ElfSection); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:757:26 [INFO] [stdout] | [INFO] [stdout] 757 | fn header(&self) -> &ElfHeader { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:764:29 [INFO] [stdout] | [INFO] [stdout] 764 | v.push(elem as &ElfSegment); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:770:32 [INFO] [stdout] | [INFO] [stdout] 770 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:773:29 [INFO] [stdout] | [INFO] [stdout] 773 | v.push(elem as &ElfSection); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:780:46 [INFO] [stdout] | [INFO] [stdout] 780 | impl<'a> TryFrom<&'a Executable<'a>> for &'a ElfFormat { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:785:54 [INFO] [stdout] | [INFO] [stdout] 785 | fn try_from(value: &'a Executable) -> Result<&'a ElfFormat, Error> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:787:54 [INFO] [stdout] | [INFO] [stdout] 787 | Executable::Elf32(ref elf) => Ok(elf as &ElfFormat), [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:788:54 [INFO] [stdout] | [INFO] [stdout] 788 | Executable::Elf64(ref elf) => Ok(elf as &ElfFormat), [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:917:19 [INFO] [stdout] | [INFO] [stdout] 917 | let res: &ElfFormat = (&result).try_into().expect("unable to convert"); [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:959:19 [INFO] [stdout] | [INFO] [stdout] 959 | let res: &ElfFormat = (&result).try_into().expect("unable to convert"); [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/format/elf.rs:1036:19 [INFO] [stdout] | [INFO] [stdout] 1036 | let res: &ElfFormat = (&result).try_into().expect("unable to convert"); [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/format/elf.rs:789:13 [INFO] [stdout] | [INFO] [stdout] 789 | _ => Err(RustepErrorKind::NotElf)?, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/format/elf.rs:869:25 [INFO] [stdout] | [INFO] [stdout] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] ... [INFO] [stdout] 888 | / define_elf_parser!{ [INFO] [stdout] 889 | | parse_elf32, [INFO] [stdout] 890 | | parse_elf_header32, [INFO] [stdout] 891 | | parse_elf_section_header32, [INFO] [stdout] ... | [INFO] [stdout] 895 | | Elf32 [INFO] [stdout] 896 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/format/elf.rs:869:25 [INFO] [stdout] | [INFO] [stdout] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] ... [INFO] [stdout] 897 | / define_elf_parser!{ [INFO] [stdout] 898 | | parse_elf64, [INFO] [stdout] 899 | | parse_elf_header64, [INFO] [stdout] 900 | | parse_elf_section_header64, [INFO] [stdout] ... | [INFO] [stdout] 904 | | Elf64 [INFO] [stdout] 905 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/format/elf.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | mem::replace(&mut s.name, new_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 888 | / define_elf_parser!{ [INFO] [stdout] 889 | | parse_elf32, [INFO] [stdout] 890 | | parse_elf_header32, [INFO] [stdout] 891 | | parse_elf_section_header32, [INFO] [stdout] ... | [INFO] [stdout] 895 | | Elf32 [INFO] [stdout] 896 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/format/elf.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | mem::replace(&mut s.name, new_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 897 | / define_elf_parser!{ [INFO] [stdout] 898 | | parse_elf64, [INFO] [stdout] 899 | | parse_elf_header64, [INFO] [stdout] 900 | | parse_elf_section_header64, [INFO] [stdout] ... | [INFO] [stdout] 904 | | Elf64 [INFO] [stdout] 905 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 6.46s [INFO] running `Command { std: "docker" "inspect" "ff3d3465a6539f3f8c576fdd3372a36f852e692474452cad13fa3274f382158a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ff3d3465a6539f3f8c576fdd3372a36f852e692474452cad13fa3274f382158a", kill_on_drop: false }` [INFO] [stdout] ff3d3465a6539f3f8c576fdd3372a36f852e692474452cad13fa3274f382158a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 769da199606deb0acc7d3d9a9cb918484812f720b35249fbacbb6738e4561953 [INFO] running `Command { std: "docker" "start" "-a" "769da199606deb0acc7d3d9a9cb918484812f720b35249fbacbb6738e4561953", kill_on_drop: false }` [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/format/elf.rs:1082:1 [INFO] [stderr] | [INFO] [stderr] 1082 | /// Elf class means to differ in arch, we must get that ahead to determine which type to be used. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/format/elf.rs:1299:1 [INFO] [stderr] | [INFO] [stderr] 1299 | /// Parses a single elf program table, 32-bit version [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 50 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/error.rs:44:32 [INFO] [stderr] | [INFO] [stderr] 44 | fn cause(&self) -> Option<&Fail> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `TryInto` [INFO] [stderr] --> src/format/elf.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | TryInto, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: cannot find type `SegmentFlag` in this scope [INFO] [stderr] --> src/format/elf.rs:59:10 [INFO] [stderr] | [INFO] [stderr] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stderr] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(proc_macro_derive_resolution_fallback)]` on by default [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] = note: for more information, see issue #50504 [INFO] [stderr] [INFO] [stderr] warning: cannot find type `SegmentFlag` in this scope [INFO] [stderr] --> src/format/elf.rs:59:10 [INFO] [stderr] | [INFO] [stderr] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stderr] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stderr] [INFO] [stderr] warning: cannot find type `SectionFlag` in this scope [INFO] [stderr] --> src/format/elf.rs:111:10 [INFO] [stderr] | [INFO] [stderr] 111 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stderr] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:183:24 [INFO] [stderr] | [INFO] [stderr] 183 | fn shdr(&self) -> &ElfSectionHeader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stderr] [INFO] [stdout] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] running 55 tests [INFO] [stderr] --> src/format/elf.rs:215:24 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Chdr ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Lib ... ok [INFO] [stderr] 215 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Nhdr ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Phdr ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Rel ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Dyn ... ok [INFO] [stderr] --> src/format/elf.rs:237:24 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Syminfo ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Rela ... ok [INFO] [stderr] 237 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Shdr ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Sym ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Move ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_RegInfo ... ok [INFO] [stderr] --> src/format/elf.rs:317:24 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_auxv_t ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Dyn__bindgen_ty_1 ... ok [INFO] [stderr] 317 | fn phdr(&self) -> &ElfSegmentHeader; [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Ehdr ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Verdef ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Vernaux ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_gptab ... ok [INFO] [stderr] --> src/format/elf.rs:345:24 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Phdr ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Ehdr ... ok [INFO] [stderr] 345 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Rela ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Shdr ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_auxv_t__bindgen_ty_1 ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Sym ... ok [INFO] [stderr] --> src/format/elf.rs:363:24 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Syminfo ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Verdaux ... ok [INFO] [stderr] 363 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Verdef ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Vernaux ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Verneed ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_auxv_t ... ok [INFO] [stderr] --> src/format/elf.rs:698:26 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_auxv_t__bindgen_ty_1 ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf_MIPS_ABIFlags_v0 ... ok [INFO] [stderr] 698 | fn header(&self) -> &ElfHeader; [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf_Options ... ok [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf_Options_Hw ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout___fsid_t ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::elf::test_parse_elf ... ok [INFO] [stderr] --> src/format/elf.rs:700:32 [INFO] [stdout] test format::elf::test_parse_elf32 ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Dyn ... ok [INFO] [stderr] 700 | fn segments(&self) -> Vec<&ElfSegment>; [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Move ... ok [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_gptab__bindgen_ty_2 ... ok [INFO] [stderr] [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_gptab__bindgen_ty_1 ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Verdaux ... ok [INFO] [stderr] --> src/format/elf.rs:702:32 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Rel ... ok [INFO] [stderr] | [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf32_Verneed ... ok [INFO] [stderr] 702 | fn sections(&self) -> Vec<&ElfSection>; [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Lib ... ok [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Chdr ... ok [INFO] [stderr] [INFO] [stdout] test format::elf::test_parse_elf_header64 ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Dyn__bindgen_ty_1 ... ok [INFO] [stderr] --> src/format/elf.rs:704:46 [INFO] [stdout] test format::elf::test_parse_elf_wrong_class ... ok [INFO] [stderr] | [INFO] [stdout] test format::executable::test_executable ... ok [INFO] [stderr] 704 | fn section(&self, name: &str) -> Option<&ElfSection> { [INFO] [stdout] test tests::it_works ... ok [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stdout] test format::elf::test_parse_elf64 ... ok [INFO] [stderr] [INFO] [stdout] test format::elf::test_parse_elf_class ... ok [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] test format::elf::test_parse_elf_header32 ... ok [INFO] [stderr] --> src/format/elf.rs:733:26 [INFO] [stdout] test format::bindings::bindgen_test_layout_Elf64_Nhdr ... ok [INFO] [stderr] | [INFO] [stdout] [INFO] [stderr] 733 | fn header(&self) -> &ElfHeader { [INFO] [stdout] test result: ok. 55 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stdout] [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:737:32 [INFO] [stderr] | [INFO] [stderr] 737 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:740:29 [INFO] [stderr] | [INFO] [stderr] 740 | v.push(elem as &ElfSegment); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:746:32 [INFO] [stderr] | [INFO] [stderr] 746 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:749:29 [INFO] [stderr] | [INFO] [stderr] 749 | v.push(elem as &ElfSection); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:757:26 [INFO] [stderr] | [INFO] [stderr] 757 | fn header(&self) -> &ElfHeader { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:761:32 [INFO] [stderr] | [INFO] [stderr] 761 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:764:29 [INFO] [stderr] | [INFO] [stderr] 764 | v.push(elem as &ElfSegment); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:770:32 [INFO] [stderr] | [INFO] [stderr] 770 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:773:29 [INFO] [stderr] | [INFO] [stderr] 773 | v.push(elem as &ElfSection); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:780:46 [INFO] [stderr] | [INFO] [stderr] 780 | impl<'a> TryFrom<&'a Executable<'a>> for &'a ElfFormat { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:785:54 [INFO] [stderr] | [INFO] [stderr] 785 | fn try_from(value: &'a Executable) -> Result<&'a ElfFormat, Error> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:787:54 [INFO] [stderr] | [INFO] [stderr] 787 | Executable::Elf32(ref elf) => Ok(elf as &ElfFormat), [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:788:54 [INFO] [stderr] | [INFO] [stderr] 788 | Executable::Elf64(ref elf) => Ok(elf as &ElfFormat), [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/format/elf.rs:789:13 [INFO] [stderr] | [INFO] [stderr] 789 | _ => Err(RustepErrorKind::NotElf)?, [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/format/elf.rs:869:25 [INFO] [stderr] | [INFO] [stderr] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] ... [INFO] [stderr] 888 | / define_elf_parser!{ [INFO] [stderr] 889 | | parse_elf32, [INFO] [stderr] 890 | | parse_elf_header32, [INFO] [stderr] 891 | | parse_elf_section_header32, [INFO] [stderr] ... | [INFO] [stderr] 895 | | Elf32 [INFO] [stderr] 896 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/format/elf.rs:869:25 [INFO] [stderr] | [INFO] [stderr] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] ... [INFO] [stderr] 897 | / define_elf_parser!{ [INFO] [stderr] 898 | | parse_elf64, [INFO] [stderr] 899 | | parse_elf_header64, [INFO] [stderr] 900 | | parse_elf_section_header64, [INFO] [stderr] ... | [INFO] [stderr] 904 | | Elf64 [INFO] [stderr] 905 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:49:12 [INFO] [stderr] | [INFO] [stderr] 49 | #![feature(try_from)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/format/elf.rs:870:21 [INFO] [stderr] | [INFO] [stderr] 870 | mem::replace(&mut s.name, new_name); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 888 | / define_elf_parser!{ [INFO] [stderr] 889 | | parse_elf32, [INFO] [stderr] 890 | | parse_elf_header32, [INFO] [stderr] 891 | | parse_elf_section_header32, [INFO] [stderr] ... | [INFO] [stderr] 895 | | Elf32 [INFO] [stderr] 896 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/format/elf.rs:870:21 [INFO] [stderr] | [INFO] [stderr] 870 | mem::replace(&mut s.name, new_name); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 897 | / define_elf_parser!{ [INFO] [stderr] 898 | | parse_elf64, [INFO] [stderr] 899 | | parse_elf_header64, [INFO] [stderr] 900 | | parse_elf_section_header64, [INFO] [stderr] ... | [INFO] [stderr] 904 | | Elf64 [INFO] [stderr] 905 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 38 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/format/elf.rs:1082:1 [INFO] [stderr] | [INFO] [stderr] 1082 | /// Elf class means to differ in arch, we must get that ahead to determine which type to be used. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/format/elf.rs:1299:1 [INFO] [stderr] | [INFO] [stderr] 1299 | /// Parses a single elf program table, 32-bit version [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 50 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/error.rs:44:32 [INFO] [stderr] | [INFO] [stderr] 44 | fn cause(&self) -> Option<&Fail> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: cannot find type `SegmentFlag` in this scope [INFO] [stderr] --> src/format/elf.rs:59:10 [INFO] [stderr] | [INFO] [stderr] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stderr] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(proc_macro_derive_resolution_fallback)]` on by default [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] = note: for more information, see issue #50504 [INFO] [stderr] [INFO] [stderr] warning: cannot find type `SegmentFlag` in this scope [INFO] [stderr] --> src/format/elf.rs:59:10 [INFO] [stderr] | [INFO] [stderr] 59 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stderr] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stderr] [INFO] [stderr] warning: cannot find type `SectionFlag` in this scope [INFO] [stderr] --> src/format/elf.rs:111:10 [INFO] [stderr] | [INFO] [stderr] 111 | #[derive(EnumFlags, Copy, Clone, Debug)] [INFO] [stderr] | ^^^^^^^^^ names from parent modules are not accessible without an explicit import [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] = note: for more information, see issue #50504 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:183:24 [INFO] [stderr] | [INFO] [stderr] 183 | fn shdr(&self) -> &ElfSectionHeader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:215:24 [INFO] [stderr] | [INFO] [stderr] 215 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:237:24 [INFO] [stderr] | [INFO] [stderr] 237 | fn shdr(&self) -> &ElfSectionHeader { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSectionHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:317:24 [INFO] [stderr] | [INFO] [stderr] 317 | fn phdr(&self) -> &ElfSegmentHeader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:345:24 [INFO] [stderr] | [INFO] [stderr] 345 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:363:24 [INFO] [stderr] | [INFO] [stderr] 363 | fn phdr(&self) -> &ElfSegmentHeader { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ElfSegmentHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:698:26 [INFO] [stderr] | [INFO] [stderr] 698 | fn header(&self) -> &ElfHeader; [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:700:32 [INFO] [stderr] | [INFO] [stderr] 700 | fn segments(&self) -> Vec<&ElfSegment>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:702:32 [INFO] [stderr] | [INFO] [stderr] 702 | fn sections(&self) -> Vec<&ElfSection>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:704:46 [INFO] [stderr] | [INFO] [stderr] 704 | fn section(&self, name: &str) -> Option<&ElfSection> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:733:26 [INFO] [stderr] | [INFO] [stderr] 733 | fn header(&self) -> &ElfHeader { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:737:32 [INFO] [stderr] | [INFO] [stderr] 737 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:740:29 [INFO] [stderr] | [INFO] [stderr] 740 | v.push(elem as &ElfSegment); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:746:32 [INFO] [stderr] | [INFO] [stderr] 746 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:749:29 [INFO] [stderr] | [INFO] [stderr] 749 | v.push(elem as &ElfSection); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:757:26 [INFO] [stderr] | [INFO] [stderr] 757 | fn header(&self) -> &ElfHeader { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfHeader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:761:32 [INFO] [stderr] | [INFO] [stderr] 761 | fn segments(&self) -> Vec<&ElfSegment> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:764:29 [INFO] [stderr] | [INFO] [stderr] 764 | v.push(elem as &ElfSegment); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSegment` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:770:32 [INFO] [stderr] | [INFO] [stderr] 770 | fn sections(&self) -> Vec<&ElfSection> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:773:29 [INFO] [stderr] | [INFO] [stderr] 773 | v.push(elem as &ElfSection); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElfSection` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:780:46 [INFO] [stderr] | [INFO] [stderr] 780 | impl<'a> TryFrom<&'a Executable<'a>> for &'a ElfFormat { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:785:54 [INFO] [stderr] | [INFO] [stderr] 785 | fn try_from(value: &'a Executable) -> Result<&'a ElfFormat, Error> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:787:54 [INFO] [stderr] | [INFO] [stderr] 787 | Executable::Elf32(ref elf) => Ok(elf as &ElfFormat), [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:788:54 [INFO] [stderr] | [INFO] [stderr] 788 | Executable::Elf64(ref elf) => Ok(elf as &ElfFormat), [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:917:19 [INFO] [stderr] | [INFO] [stderr] 917 | let res: &ElfFormat = (&result).try_into().expect("unable to convert"); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:959:19 [INFO] [stderr] | [INFO] [stderr] 959 | let res: &ElfFormat = (&result).try_into().expect("unable to convert"); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/format/elf.rs:1036:19 [INFO] [stderr] | [INFO] [stderr] 1036 | let res: &ElfFormat = (&result).try_into().expect("unable to convert"); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ElfFormat` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/format/elf.rs:789:13 [INFO] [stderr] | [INFO] [stderr] 789 | _ => Err(RustepErrorKind::NotElf)?, [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/format/elf.rs:869:25 [INFO] [stderr] | [INFO] [stderr] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] ... [INFO] [stderr] 888 | / define_elf_parser!{ [INFO] [stderr] 889 | | parse_elf32, [INFO] [stderr] 890 | | parse_elf_header32, [INFO] [stderr] 891 | | parse_elf_section_header32, [INFO] [stderr] ... | [INFO] [stderr] 895 | | Elf32 [INFO] [stderr] 896 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/format/elf.rs:869:25 [INFO] [stderr] | [INFO] [stderr] 869 | let mut new_name = String::from_utf8(name_bytes.to_vec())?; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] ... [INFO] [stderr] 897 | / define_elf_parser!{ [INFO] [stderr] 898 | | parse_elf64, [INFO] [stderr] 899 | | parse_elf_header64, [INFO] [stderr] 900 | | parse_elf_section_header64, [INFO] [stderr] ... | [INFO] [stderr] 904 | | Elf64 [INFO] [stderr] 905 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:49:12 [INFO] [stderr] | [INFO] [stderr] 49 | #![feature(try_from)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/format/elf.rs:870:21 [INFO] [stderr] | [INFO] [stderr] 870 | mem::replace(&mut s.name, new_name); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 888 | / define_elf_parser!{ [INFO] [stderr] 889 | | parse_elf32, [INFO] [stderr] 890 | | parse_elf_header32, [INFO] [stderr] 891 | | parse_elf_section_header32, [INFO] [stderr] ... | [INFO] [stderr] 895 | | Elf32 [INFO] [stderr] 896 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used [INFO] [stderr] --> src/format/elf.rs:870:21 [INFO] [stderr] | [INFO] [stderr] 870 | mem::replace(&mut s.name, new_name); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 897 | / define_elf_parser!{ [INFO] [stderr] 898 | | parse_elf64, [INFO] [stderr] 899 | | parse_elf_header64, [INFO] [stderr] 900 | | parse_elf_section_header64, [INFO] [stderr] ... | [INFO] [stderr] 904 | | Elf64 [INFO] [stderr] 905 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 40 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.13s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/rustep-0b01c3707429c3ac [INFO] [stderr] Doc-tests rustep [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/lib.rs - (line 9) ... ok [INFO] [stdout] test src/format/executable.rs - format::executable::Executable::from_u8_array (line 37) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "769da199606deb0acc7d3d9a9cb918484812f720b35249fbacbb6738e4561953", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "769da199606deb0acc7d3d9a9cb918484812f720b35249fbacbb6738e4561953", kill_on_drop: false }` [INFO] [stdout] 769da199606deb0acc7d3d9a9cb918484812f720b35249fbacbb6738e4561953