[INFO] crate elrond 1.0.0 is already in cache [INFO] extracting crate elrond 1.0.0 into work/ex/clippy-test-run/sources/stable/reg/elrond/1.0.0 [INFO] extracting crate elrond 1.0.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/elrond/1.0.0 [INFO] validating manifest of elrond-1.0.0 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of elrond-1.0.0 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing elrond-1.0.0 [INFO] finished frobbing elrond-1.0.0 [INFO] frobbed toml for elrond-1.0.0 written to work/ex/clippy-test-run/sources/stable/reg/elrond/1.0.0/Cargo.toml [INFO] started frobbing elrond-1.0.0 [INFO] finished frobbing elrond-1.0.0 [INFO] frobbed toml for elrond-1.0.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/elrond/1.0.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting elrond-1.0.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/elrond/1.0.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 9eacba46b1a6ab314dfe912ac35b0a77543155e743c70c030e2a3af9ba7c24fc [INFO] running `"docker" "start" "-a" "9eacba46b1a6ab314dfe912ac35b0a77543155e743c70c030e2a3af9ba7c24fc"` [INFO] [stderr] Checking elrond v1.0.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section64.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section64.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | link: link, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section64.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section32.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section32.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | link: link, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section32.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/relocation/arcdata.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | len: len, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `len` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/relocation/arcdata.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | offset: offset [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section64.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section64.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | link: link, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section64.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section32.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section32.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | link: link, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/section/section32.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/relocation/arcdata.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | len: len, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `len` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/relocation/arcdata.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | offset: offset [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/magic/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | mod magic; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/header/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | mod header; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/phdr/flags.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | const ARR: &'static [(Attributes,u32)] = &[ [INFO] [stderr] | -^^^^^^^------------------- help: consider removing `'static`: `&[(Attributes,u32)]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:27:26 [INFO] [stderr] | [INFO] [stderr] 27 | (is_lo_os, LoOS, 0x60000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6000_0000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:28:26 [INFO] [stderr] | [INFO] [stderr] 28 | (is_hi_os, HiOS, 0x6FFFFFFF), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:29:31 [INFO] [stderr] | [INFO] [stderr] 29 | (is_low_proc, LoProc, 0x70000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:30:30 [INFO] [stderr] | [INFO] [stderr] 30 | (is_hi_proc, HiProc, 0x7FFFFFFF) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/phdr/mod.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | mod phdr; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | (is_lo_os, LoOS, 0x60000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:34:26 [INFO] [stderr] | [INFO] [stderr] 34 | (is_hi_os, HiOS, 0x6FFFFFFF), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:35:31 [INFO] [stderr] | [INFO] [stderr] 35 | (is_low_proc, LoProc, 0x70000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:36:30 [INFO] [stderr] | [INFO] [stderr] 36 | (is_hi_proc, HiProc, 0x7FFFFFFF) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/section/attributes.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | const ARR: &'static [(SectMemAttrib,u32)] = &[ [INFO] [stderr] | -^^^^^^^---------------------- help: consider removing `'static`: `&[(SectMemAttrib,u32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/attributes.rs:60:29 [INFO] [stderr] | [INFO] [stderr] 60 | (SectMemAttrib::MaskOS, 0x0F000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0F00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/attributes.rs:61:31 [INFO] [stderr] | [INFO] [stderr] 61 | (SectMemAttrib::MaskProc, 0xF0000000) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xF000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/section/mod.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | mod section; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/symtable/mod.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | mod symtable; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/magic/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | mod magic; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/header/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | mod header; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/phdr/flags.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | const ARR: &'static [(Attributes,u32)] = &[ [INFO] [stderr] | -^^^^^^^------------------- help: consider removing `'static`: `&[(Attributes,u32)]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:27:26 [INFO] [stderr] | [INFO] [stderr] 27 | (is_lo_os, LoOS, 0x60000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6000_0000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:28:26 [INFO] [stderr] | [INFO] [stderr] 28 | (is_hi_os, HiOS, 0x6FFFFFFF), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:29:31 [INFO] [stderr] | [INFO] [stderr] 29 | (is_low_proc, LoProc, 0x70000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/phdr/ph_type.rs:30:30 [INFO] [stderr] | [INFO] [stderr] 30 | (is_hi_proc, HiProc, 0x7FFFFFFF) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/phdr/mod.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | mod phdr; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | (is_lo_os, LoOS, 0x60000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:34:26 [INFO] [stderr] | [INFO] [stderr] 34 | (is_hi_os, HiOS, 0x6FFFFFFF), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x6FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:35:31 [INFO] [stderr] | [INFO] [stderr] 35 | (is_low_proc, LoProc, 0x70000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/section_type.rs:36:30 [INFO] [stderr] | [INFO] [stderr] 36 | (is_hi_proc, HiProc, 0x7FFFFFFF) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x7FFF_FFFF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/section/attributes.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | const ARR: &'static [(SectMemAttrib,u32)] = &[ [INFO] [stderr] | -^^^^^^^---------------------- help: consider removing `'static`: `&[(SectMemAttrib,u32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/attributes.rs:60:29 [INFO] [stderr] | [INFO] [stderr] 60 | (SectMemAttrib::MaskOS, 0x0F000000), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0F00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/section/attributes.rs:61:31 [INFO] [stderr] | [INFO] [stderr] 61 | (SectMemAttrib::MaskProc, 0xF0000000) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xF000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/section/mod.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | mod section; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/symtable/mod.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | mod symtable; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(safe_packed_borrows)] 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 #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: #[derive] can't be used on a #[repr(packed)] struct that does not derive Copy (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:80:10 [INFO] [stderr] | [INFO] [stderr] 80 | #[derive(Clone)] [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] = note: for more information, see issue #46043 [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: #[derive] can't be used on a #[repr(packed)] struct that does not derive Copy (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:80:10 [INFO] [stderr] | [INFO] [stderr] 80 | #[derive(Clone)] [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] = note: for more information, see issue #46043 [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/abi.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@byte_parser_with_unknown [INFO] [stderr] 4 | | type_name: ElfAbi; [INFO] [stderr] 5 | | new_trait: { [INFO] [stderr] 6 | | trait_name: Abi; [INFO] [stderr] ... | [INFO] [stderr] 21 | | } [INFO] [stderr] 22 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/macros.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | / pub fn $parser_name<'a>(buffer: &'a [u8]) -> IResult<&'a [u8], $enum_type_name, u32> { [INFO] [stderr] 57 | | let mut ret: Option<$enum_type_name> = None; [INFO] [stderr] 58 | | let len = buffer.len(); [INFO] [stderr] 59 | | if len >= 1 { [INFO] [stderr] ... | [INFO] [stderr] 72 | | } [INFO] [stderr] 73 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/endian.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfEndian; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Endian; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: casting to the same type is unnecessary (`u32` -> `u32`) [INFO] [stderr] --> src/macros.rs:69:80 [INFO] [stderr] | [INFO] [stderr] 69 | (Option::None,_) => IResult::Error(Err::Code(ErrorKind::Custom($err as u32))), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/endian.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfEndian; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Endian; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/macros.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | / pub fn $parser_name<'a>(buffer: &'a [u8]) -> IResult<&'a [u8], $enum_type_name, u32> { [INFO] [stderr] 57 | | let mut ret: Option<$enum_type_name> = None; [INFO] [stderr] 58 | | let len = buffer.len(); [INFO] [stderr] 59 | | if len >= 1 { [INFO] [stderr] ... | [INFO] [stderr] 72 | | } [INFO] [stderr] 73 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/class.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfClass; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Class; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: casting to the same type is unnecessary (`u32` -> `u32`) [INFO] [stderr] --> src/macros.rs:69:80 [INFO] [stderr] | [INFO] [stderr] 69 | (Option::None,_) => IResult::Error(Err::Code(ErrorKind::Custom($err as u32))), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/class.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfClass; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Class; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | self.abi.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.abi` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | self.endian.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.endian` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:38:9 [INFO] [stderr] | [INFO] [stderr] 38 | self.class.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.class` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | self.abi_version.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.abi_version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/header/file_type.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: ElfFileType; [INFO] [stderr] 5 | | inner_type: u16; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 30 | | }; [INFO] [stderr] 31 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/header/arch.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: ElfArch; [INFO] [stderr] 5 | | inner_type: u16; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 35 | | }; [INFO] [stderr] 36 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header32.rs:65:1 [INFO] [stderr] | [INFO] [stderr] 65 | / fn complete<'a>(buffer: &'a [u8], x: E32Pre, header: ElfMagicNumbers) [INFO] [stderr] 66 | | -> Elf32Header<'a> [INFO] [stderr] 67 | | { [INFO] [stderr] 68 | | Elf32Header { [INFO] [stderr] ... | [INFO] [stderr] 83 | | } [INFO] [stderr] 84 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header32.rs:125:1 [INFO] [stderr] | [INFO] [stderr] 125 | / pub fn parse_elf32_header<'a>(b: &'a [u8]) [INFO] [stderr] 126 | | -> IResult<&'a [u8], Elf32Header<'a>> [INFO] [stderr] 127 | | { [INFO] [stderr] 128 | | [INFO] [stderr] ... | [INFO] [stderr] 150 | | } [INFO] [stderr] 151 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 182 | self.e_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | self.e_machine.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_machine` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:205:9 [INFO] [stderr] | [INFO] [stderr] 205 | self.e_version.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:210:23 [INFO] [stderr] | [INFO] [stderr] 210 | VarSize::from(self.e_entry.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_entry` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | self.e_phoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:220:9 [INFO] [stderr] | [INFO] [stderr] 220 | self.e_shoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:225:23 [INFO] [stderr] | [INFO] [stderr] 225 | VarSize::from(self.e_flags.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:230:9 [INFO] [stderr] | [INFO] [stderr] 230 | self.e_ehsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_ehsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:235:9 [INFO] [stderr] | [INFO] [stderr] 235 | self.e_phentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:240:9 [INFO] [stderr] | [INFO] [stderr] 240 | self.e_phnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:245:9 [INFO] [stderr] | [INFO] [stderr] 245 | self.e_shentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | self.e_shnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:255:9 [INFO] [stderr] | [INFO] [stderr] 255 | self.e_shstrndx.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shstrndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header64.rs:64:1 [INFO] [stderr] | [INFO] [stderr] 64 | / fn complete<'a>(buffer: &'a [u8], x: E64Pre, header: ElfMagicNumbers) [INFO] [stderr] 65 | | -> Elf64Header<'a> [INFO] [stderr] 66 | | { [INFO] [stderr] 67 | | Elf64Header { [INFO] [stderr] ... | [INFO] [stderr] 82 | | } [INFO] [stderr] 83 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header64.rs:124:1 [INFO] [stderr] | [INFO] [stderr] 124 | / pub fn parse_elf64_header<'a>(b: &'a [u8]) [INFO] [stderr] 125 | | -> IResult<&'a [u8], Elf64Header<'a>> [INFO] [stderr] 126 | | { [INFO] [stderr] 127 | | [INFO] [stderr] ... | [INFO] [stderr] 149 | | } [INFO] [stderr] 150 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:181:9 [INFO] [stderr] | [INFO] [stderr] 181 | self.e_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:187:9 [INFO] [stderr] | [INFO] [stderr] 187 | self.e_machine.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_machine` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | self.e_version.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:208:23 [INFO] [stderr] | [INFO] [stderr] 208 | VarSize::from(self.e_entry.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_entry` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:213:9 [INFO] [stderr] | [INFO] [stderr] 213 | self.e_phoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | self.e_shoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:223:23 [INFO] [stderr] | [INFO] [stderr] 223 | VarSize::from(self.e_flags.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:228:9 [INFO] [stderr] | [INFO] [stderr] 228 | self.e_ehsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_ehsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | self.e_phentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:238:9 [INFO] [stderr] | [INFO] [stderr] 238 | self.e_phnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:243:9 [INFO] [stderr] | [INFO] [stderr] 243 | self.e_shentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | self.e_shnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:253:9 [INFO] [stderr] | [INFO] [stderr] 253 | self.e_shstrndx.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shstrndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header.rs:138:1 [INFO] [stderr] | [INFO] [stderr] 138 | / fn elf64<'a>(b: &'a [u8]) -> IResult<&'a [u8],ElfHeaderBase<'a>> { [INFO] [stderr] 139 | | match parse_elf64_header(b) { [INFO] [stderr] 140 | | IResult::Incomplete(n) => IResult::Incomplete(n), [INFO] [stderr] 141 | | IResult::Error(e) => IResult::Error(e), [INFO] [stderr] 142 | | IResult::Done(x,y) => IResult::Done(x,ElfHeaderBase{ data: Arc::new(y) }) [INFO] [stderr] 143 | | } [INFO] [stderr] 144 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header.rs:145:1 [INFO] [stderr] | [INFO] [stderr] 145 | / fn elf32<'a>(b: &'a [u8]) -> IResult<&'a [u8],ElfHeaderBase<'a>> { [INFO] [stderr] 146 | | match parse_elf32_header(b) { [INFO] [stderr] 147 | | IResult::Incomplete(n) => IResult::Incomplete(n), [INFO] [stderr] 148 | | IResult::Error(e) => IResult::Error(e), [INFO] [stderr] 149 | | IResult::Done(x,y) => IResult::Done(x,ElfHeaderBase{ data: Arc::new(y) }) [INFO] [stderr] 150 | | } [INFO] [stderr] 151 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header.rs:155:1 [INFO] [stderr] | [INFO] [stderr] 155 | / pub fn parse_elf<'a>(buffer: &'a [u8]) [INFO] [stderr] 156 | | -> Result,Fault> [INFO] [stderr] 157 | | { [INFO] [stderr] 158 | | match parse_elf_header(buffer) { [INFO] [stderr] ... | [INFO] [stderr] 162 | | } [INFO] [stderr] 163 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/varsize.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | / match self { [INFO] [stderr] 20 | | &VarSize::Bits64(ref v) => write!(f, "64bit {:#016X}", v.clone()), [INFO] [stderr] 21 | | &VarSize::Bits32(ref v) => write!(f, "32bit {:#016X}", v.clone()), [INFO] [stderr] 22 | | &VarSize::Bits16(ref v) => write!(f, "16bit {:#016X}", v.clone()), [INFO] [stderr] 23 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 19 | match *self { [INFO] [stderr] 20 | VarSize::Bits64(ref v) => write!(f, "64bit {:#016X}", v.clone()), [INFO] [stderr] 21 | VarSize::Bits32(ref v) => write!(f, "32bit {:#016X}", v.clone()), [INFO] [stderr] 22 | VarSize::Bits16(ref v) => write!(f, "16bit {:#016X}", v.clone()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/phdr/flags.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | fn get_attributes<'a>(&'a self) -> &'a [Attributes]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/phdr/flags.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | / self.get_attributes() [INFO] [stderr] 13 | | .iter() [INFO] [stderr] 14 | | .filter(|x| **x == Attributes::Execute) [INFO] [stderr] 15 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::filter_next)] on by default [INFO] [stderr] = note: replace `filter(|x| **x == Attributes::Execute).next()` with `find(|x| **x == Attributes::Execute)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/phdr/flags.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | / self.get_attributes() [INFO] [stderr] 20 | | .iter() [INFO] [stderr] 21 | | .filter(|x| **x == Attributes::Write) [INFO] [stderr] 22 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == Attributes::Write).next()` with `find(|x| **x == Attributes::Write)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/phdr/flags.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | / self.get_attributes() [INFO] [stderr] 27 | | .iter() [INFO] [stderr] 28 | | .filter(|x| **x == Attributes::Read) [INFO] [stderr] 29 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == Attributes::Read).next()` with `find(|x| **x == Attributes::Read)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/flags.rs:42:21 [INFO] [stderr] | [INFO] [stderr] 42 | .filter(|v| v.1.clone() & x > 0) [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/phdr/ph_type.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: ProgramHeaderType; [INFO] [stderr] 5 | | inner_type: u32; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 31 | | }; [INFO] [stderr] 32 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:83:31 [INFO] [stderr] | [INFO] [stderr] 83 | p_offset: p.p_offset.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:84:30 [INFO] [stderr] | [INFO] [stderr] 84 | p_vaddr: p.p_vaddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:85:30 [INFO] [stderr] | [INFO] [stderr] 85 | p_paddr: p.p_paddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:86:31 [INFO] [stderr] | [INFO] [stderr] 86 | p_filesz: p.p_filesz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:87:30 [INFO] [stderr] | [INFO] [stderr] 87 | p_memsz: p.p_memsz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:88:47 [INFO] [stderr] | [INFO] [stderr] 88 | p_flags: build_attributes(p.p_flags.clone()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:89:30 [INFO] [stderr] | [INFO] [stderr] 89 | p_align: p.p_align.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:90:29 [INFO] [stderr] | [INFO] [stderr] 90 | p_type: p.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/phdr/phdr32.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | / fn get_attributes<'c>(&'c self) -> &'c [Attributes] { [INFO] [stderr] 171 | | &self.p_flags [INFO] [stderr] 172 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | self.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 234 | self.p_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:238:23 [INFO] [stderr] | [INFO] [stderr] 238 | VarSize::from(self.p_vaddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:242:23 [INFO] [stderr] | [INFO] [stderr] 242 | VarSize::from(self.p_paddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | self.p_filesz.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:250:23 [INFO] [stderr] | [INFO] [stderr] 250 | VarSize::from(self.p_memsz.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:254:23 [INFO] [stderr] | [INFO] [stderr] 254 | VarSize::from(self.p_align.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:85:31 [INFO] [stderr] | [INFO] [stderr] 85 | p_offset: p.p_offset.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:86:30 [INFO] [stderr] | [INFO] [stderr] 86 | p_vaddr: p.p_vaddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:87:30 [INFO] [stderr] | [INFO] [stderr] 87 | p_paddr: p.p_paddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:88:31 [INFO] [stderr] | [INFO] [stderr] 88 | p_filesz: p.p_filesz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:89:30 [INFO] [stderr] | [INFO] [stderr] 89 | p_memsz: p.p_memsz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:90:47 [INFO] [stderr] | [INFO] [stderr] 90 | p_flags: build_attributes(p.p_flags.clone()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:91:30 [INFO] [stderr] | [INFO] [stderr] 91 | p_align: p.p_align.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:92:29 [INFO] [stderr] | [INFO] [stderr] 92 | p_type: p.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/phdr/phdr64.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | / fn get_attributes<'c>(&'c self) -> &'c [Attributes] { [INFO] [stderr] 171 | | &self.p_flags [INFO] [stderr] 172 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | self.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 234 | self.p_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:238:23 [INFO] [stderr] | [INFO] [stderr] 238 | VarSize::from(self.p_vaddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:242:23 [INFO] [stderr] | [INFO] [stderr] 242 | VarSize::from(self.p_paddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | self.p_filesz.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:250:23 [INFO] [stderr] | [INFO] [stderr] 250 | VarSize::from(self.p_memsz.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:254:23 [INFO] [stderr] | [INFO] [stderr] 254 | VarSize::from(self.p_align.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/traits.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | fn name<'b>(&'b self) -> &'b str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/traits.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | fn link_name<'b>(&'b self) -> Option<&'b str>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/traits.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | / fn sh_flags<'b>(&'b self) -> &'b [SectMemAttrib] { [INFO] [stderr] 19 | | self.get_attributes() [INFO] [stderr] 20 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/section/section_type.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: SectionKind; [INFO] [stderr] 5 | | inner_type: u32; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 37 | | }; [INFO] [stderr] 38 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/attributes.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn get_attributes<'a>(&'a self) -> &'a [SectMemAttrib]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | / self.get_attributes() [INFO] [stderr] 21 | | .iter() [INFO] [stderr] 22 | | .filter(|x| **x == SectMemAttrib::ExecInstr) [INFO] [stderr] 23 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::ExecInstr).next()` with `find(|x| **x == SectMemAttrib::ExecInstr)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | / self.get_attributes() [INFO] [stderr] 28 | | .iter() [INFO] [stderr] 29 | | .filter(|x| **x == SectMemAttrib::Write) [INFO] [stderr] 30 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::Write).next()` with `find(|x| **x == SectMemAttrib::Write)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | / self.get_attributes() [INFO] [stderr] 35 | | .iter() [INFO] [stderr] 36 | | .filter(|x| **x == SectMemAttrib::Alloc) [INFO] [stderr] 37 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::Alloc).next()` with `find(|x| **x == SectMemAttrib::Alloc)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | / self.get_attributes() [INFO] [stderr] 42 | | .iter() [INFO] [stderr] 43 | | .filter(|x| **x == SectMemAttrib::MaskOS) [INFO] [stderr] 44 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::MaskOS).next()` with `find(|x| **x == SectMemAttrib::MaskOS)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | / self.get_attributes() [INFO] [stderr] 49 | | .iter() [INFO] [stderr] 50 | | .filter(|x| **x == SectMemAttrib::MaskProc) [INFO] [stderr] 51 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::MaskProc).next()` with `find(|x| **x == SectMemAttrib::MaskProc)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/attributes.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | .filter(|v| v.1.clone() & x > 0) [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:35:24 [INFO] [stderr] | [INFO] [stderr] 35 | let own_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:40:25 [INFO] [stderr] | [INFO] [stderr] 40 | let link_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let flags = build_attributes(data[index].sh_flags.clone() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:91:22 [INFO] [stderr] | [INFO] [stderr] 91 | let offset = self.sh_offset.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:92:20 [INFO] [stderr] | [INFO] [stderr] 92 | let size = self.sh_size.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section64.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | / fn get_attributes<'b>(&'b self) -> &'b [SectMemAttrib] { [INFO] [stderr] 192 | | &self.sh_flags [INFO] [stderr] 193 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:197:9 [INFO] [stderr] | [INFO] [stderr] 197 | self.sections[self.index].sh_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:295:9 [INFO] [stderr] | [INFO] [stderr] 295 | self.sections[self.index].sh_name.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section64.rs:298:5 [INFO] [stderr] | [INFO] [stderr] 298 | / fn name<'b>(&'b self) -> &'b str { [INFO] [stderr] 299 | | self.name.as_ref() [INFO] [stderr] 300 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section64.rs:302:5 [INFO] [stderr] | [INFO] [stderr] 302 | / fn link_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 303 | | match &self.link { [INFO] [stderr] 304 | | &Option::None => None, [INFO] [stderr] 305 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 306 | | } [INFO] [stderr] 307 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/section/section64.rs:303:9 [INFO] [stderr] | [INFO] [stderr] 303 | / match &self.link { [INFO] [stderr] 304 | | &Option::None => None, [INFO] [stderr] 305 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 306 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 303 | match self.link { [INFO] [stderr] 304 | Option::None => None, [INFO] [stderr] 305 | Option::Some(ref name) => Some(name) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:310:23 [INFO] [stderr] | [INFO] [stderr] 310 | VarSize::from(self.sections[self.index].sh_addr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:314:9 [INFO] [stderr] | [INFO] [stderr] 314 | self.sections[self.index].sh_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:318:9 [INFO] [stderr] | [INFO] [stderr] 318 | self.sections[self.index].sh_size.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:322:9 [INFO] [stderr] | [INFO] [stderr] 322 | self.sections[self.index].sh_link.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:326:9 [INFO] [stderr] | [INFO] [stderr] 326 | self.sections[self.index].sh_info.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:330:23 [INFO] [stderr] | [INFO] [stderr] 330 | VarSize::from(self.sections[self.index].sh_addralign.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addralign` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:334:9 [INFO] [stderr] | [INFO] [stderr] 334 | self.sections[self.index].sh_entsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_entsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:35:24 [INFO] [stderr] | [INFO] [stderr] 35 | let own_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:40:25 [INFO] [stderr] | [INFO] [stderr] 40 | let link_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let flags = build_attributes(data[index].sh_flags.clone() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:94:22 [INFO] [stderr] | [INFO] [stderr] 94 | let offset = self.sh_offset.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:95:20 [INFO] [stderr] | [INFO] [stderr] 95 | let size = self.sh_size.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section32.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | / fn get_attributes<'b>(&'b self) -> &'b [SectMemAttrib] { [INFO] [stderr] 195 | | &self.sh_flags [INFO] [stderr] 196 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:200:9 [INFO] [stderr] | [INFO] [stderr] 200 | self.sections[self.index].sh_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:298:9 [INFO] [stderr] | [INFO] [stderr] 298 | self.sections[self.index].sh_name.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section32.rs:301:5 [INFO] [stderr] | [INFO] [stderr] 301 | / fn name<'b>(&'b self) -> &'b str { [INFO] [stderr] 302 | | self.name.as_ref() [INFO] [stderr] 303 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section32.rs:305:5 [INFO] [stderr] | [INFO] [stderr] 305 | / fn link_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 306 | | match &self.link { [INFO] [stderr] 307 | | &Option::None => None, [INFO] [stderr] 308 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 309 | | } [INFO] [stderr] 310 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/section/section32.rs:306:9 [INFO] [stderr] | [INFO] [stderr] 306 | / match &self.link { [INFO] [stderr] 307 | | &Option::None => None, [INFO] [stderr] 308 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 309 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 306 | match self.link { [INFO] [stderr] 307 | Option::None => None, [INFO] [stderr] 308 | Option::Some(ref name) => Some(name) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:313:23 [INFO] [stderr] | [INFO] [stderr] 313 | VarSize::from(self.sections[self.index].sh_addr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:317:9 [INFO] [stderr] | [INFO] [stderr] 317 | self.sections[self.index].sh_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:321:9 [INFO] [stderr] | [INFO] [stderr] 321 | self.sections[self.index].sh_size.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:325:9 [INFO] [stderr] | [INFO] [stderr] 325 | self.sections[self.index].sh_link.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:329:9 [INFO] [stderr] | [INFO] [stderr] 329 | self.sections[self.index].sh_info.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:333:23 [INFO] [stderr] | [INFO] [stderr] 333 | VarSize::from(self.sections[self.index].sh_addralign.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addralign` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:337:9 [INFO] [stderr] | [INFO] [stderr] 337 | self.sections[self.index].sh_entsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_entsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/section/section.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | / self.data.iter() [INFO] [stderr] 43 | | .filter(|x| x.name() == name) [INFO] [stderr] 44 | | .map(|x| x.clone()) [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 42 | self.data.iter() [INFO] [stderr] 43 | .filter(|x| x.name() == name).cloned() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/mod.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | / pub fn find_null<'a>(buffer: &'a [u8]) -> Option> { [INFO] [stderr] 18 | | let mut term = 0usize; [INFO] [stderr] 19 | | let len = buffer.len(); [INFO] [stderr] 20 | | for i in 0..len { [INFO] [stderr] ... | [INFO] [stderr] 29 | | Some(String::from_utf8_lossy(temp)) [INFO] [stderr] 30 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buffer`. [INFO] [stderr] --> src/section/mod.rs:20:14 [INFO] [stderr] | [INFO] [stderr] 20 | for i in 0..len { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 20 | for in buffer.iter().take(len) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/symtable/bind.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum!{@byte_parser_with_unknown [INFO] [stderr] 5 | | type_name: SymBinding; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] 7 | | trait_name: SymbolBinding; [INFO] [stderr] ... | [INFO] [stderr] 17 | | } [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/symtable/symtype.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum!{@byte_parser_with_unknown [INFO] [stderr] 5 | | type_name: SymType; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] 7 | | trait_name: SymbolType; [INFO] [stderr] ... | [INFO] [stderr] 19 | | } [INFO] [stderr] 20 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/symtable/symprot.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum!{@byte_parser_with_unknown [INFO] [stderr] 4 | | type_name: SymProt; [INFO] [stderr] 5 | | new_trait: { [INFO] [stderr] 6 | | trait_name: SymbolProtection; [INFO] [stderr] ... | [INFO] [stderr] 15 | | } [INFO] [stderr] 16 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | let bind = data.st_info.clone() >> 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | let kind = data.st_info.clone() & 0x0Fu8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/symtable/symtable32.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | let entries = if data.len() != 0 && data.len() >= sym_entry_size { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | self.st_bind.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_bind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | self.st_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:179:9 [INFO] [stderr] | [INFO] [stderr] 179 | self.st_prot.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_prot` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/symtable32.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | / fn get_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 278 | | match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] 282 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/symtable/symtable32.rs:278:9 [INFO] [stderr] | [INFO] [stderr] 278 | / match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 278 | match self.name { [INFO] [stderr] 279 | Option::None => None, [INFO] [stderr] 280 | Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:286:23 [INFO] [stderr] | [INFO] [stderr] 286 | VarSize::from(self.st_value.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:291:23 [INFO] [stderr] | [INFO] [stderr] 291 | VarSize::from(self.st_size.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:296:9 [INFO] [stderr] | [INFO] [stderr] 296 | self.st_shndx.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | let bind = data.st_info.clone() >> 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | let kind = data.st_info.clone() & 0x0Fu8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/symtable/symtable64.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | let entries = if data.len() != 0 && data.len() >= sym_entry_size { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | self.st_bind.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_bind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | self.st_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:179:9 [INFO] [stderr] | [INFO] [stderr] 179 | self.st_prot.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_prot` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/symtable64.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | / fn get_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 278 | | match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] 282 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/symtable/symtable64.rs:278:9 [INFO] [stderr] | [INFO] [stderr] 278 | / match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 278 | match self.name { [INFO] [stderr] 279 | Option::None => None, [INFO] [stderr] 280 | Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:286:23 [INFO] [stderr] | [INFO] [stderr] 286 | VarSize::from(self.st_value.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:291:23 [INFO] [stderr] | [INFO] [stderr] 291 | VarSize::from(self.st_size.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:296:9 [INFO] [stderr] | [INFO] [stderr] 296 | self.st_shndx.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/traits.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | fn get_name<'b>(&'b self) -> Option<&'b str>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/mod.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | / pub fn find_null<'a>(buffer: &'a [u8]) -> Option> { [INFO] [stderr] 20 | | let mut term = 0usize; [INFO] [stderr] 21 | | let len = buffer.len(); [INFO] [stderr] 22 | | for i in 0..len { [INFO] [stderr] ... | [INFO] [stderr] 31 | | Some(String::from_utf8_lossy(temp)) [INFO] [stderr] 32 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buffer`. [INFO] [stderr] --> src/symtable/mod.rs:22:14 [INFO] [stderr] | [INFO] [stderr] 22 | for i in 0..len { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 22 | for in buffer.iter().take(len) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:22:21 [INFO] [stderr] | [INFO] [stderr] 22 | let start = self.offset.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | let end = start + self.len.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.len` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | self.offset.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | self.len.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.len` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(safe_packed_borrows)] 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 #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: #[derive] can't be used on a #[repr(packed)] struct that does not derive Copy (error E0133) [INFO] [stderr] --> src/symtable/symtable32.rs:80:10 [INFO] [stderr] | [INFO] [stderr] 80 | #[derive(Clone)] [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] = note: for more information, see issue #46043 [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [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] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: #[derive] can't be used on a #[repr(packed)] struct that does not derive Copy (error E0133) [INFO] [stderr] --> src/symtable/symtable64.rs:80:10 [INFO] [stderr] | [INFO] [stderr] 80 | #[derive(Clone)] [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] = note: for more information, see issue #46043 [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/abi.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@byte_parser_with_unknown [INFO] [stderr] 4 | | type_name: ElfAbi; [INFO] [stderr] 5 | | new_trait: { [INFO] [stderr] 6 | | trait_name: Abi; [INFO] [stderr] ... | [INFO] [stderr] 21 | | } [INFO] [stderr] 22 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/macros.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | / pub fn $parser_name<'a>(buffer: &'a [u8]) -> IResult<&'a [u8], $enum_type_name, u32> { [INFO] [stderr] 57 | | let mut ret: Option<$enum_type_name> = None; [INFO] [stderr] 58 | | let len = buffer.len(); [INFO] [stderr] 59 | | if len >= 1 { [INFO] [stderr] ... | [INFO] [stderr] 72 | | } [INFO] [stderr] 73 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/endian.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfEndian; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Endian; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: casting to the same type is unnecessary (`u32` -> `u32`) [INFO] [stderr] --> src/macros.rs:69:80 [INFO] [stderr] | [INFO] [stderr] 69 | (Option::None,_) => IResult::Error(Err::Code(ErrorKind::Custom($err as u32))), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/endian.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfEndian; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Endian; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/macros.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | / pub fn $parser_name<'a>(buffer: &'a [u8]) -> IResult<&'a [u8], $enum_type_name, u32> { [INFO] [stderr] 57 | | let mut ret: Option<$enum_type_name> = None; [INFO] [stderr] 58 | | let len = buffer.len(); [INFO] [stderr] 59 | | if len >= 1 { [INFO] [stderr] ... | [INFO] [stderr] 72 | | } [INFO] [stderr] 73 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/class.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfClass; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Class; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: casting to the same type is unnecessary (`u32` -> `u32`) [INFO] [stderr] --> src/macros.rs:69:80 [INFO] [stderr] | [INFO] [stderr] 69 | (Option::None,_) => IResult::Error(Err::Code(ErrorKind::Custom($err as u32))), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/magic/class.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum! {@limited_byte_parser [INFO] [stderr] 5 | | type_name: ElfClass; [INFO] [stderr] 6 | | new_trait { [INFO] [stderr] 7 | | trait_name: Class; [INFO] [stderr] ... | [INFO] [stderr] 17 | | }; [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | self.abi.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.abi` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | self.endian.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.endian` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:38:9 [INFO] [stderr] | [INFO] [stderr] 38 | self.class.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.class` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/magic/magic.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | self.abi_version.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.abi_version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/header/file_type.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: ElfFileType; [INFO] [stderr] 5 | | inner_type: u16; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 30 | | }; [INFO] [stderr] 31 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/header/arch.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: ElfArch; [INFO] [stderr] 5 | | inner_type: u16; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 35 | | }; [INFO] [stderr] 36 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header32.rs:65:1 [INFO] [stderr] | [INFO] [stderr] 65 | / fn complete<'a>(buffer: &'a [u8], x: E32Pre, header: ElfMagicNumbers) [INFO] [stderr] 66 | | -> Elf32Header<'a> [INFO] [stderr] 67 | | { [INFO] [stderr] 68 | | Elf32Header { [INFO] [stderr] ... | [INFO] [stderr] 83 | | } [INFO] [stderr] 84 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header32.rs:125:1 [INFO] [stderr] | [INFO] [stderr] 125 | / pub fn parse_elf32_header<'a>(b: &'a [u8]) [INFO] [stderr] 126 | | -> IResult<&'a [u8], Elf32Header<'a>> [INFO] [stderr] 127 | | { [INFO] [stderr] 128 | | [INFO] [stderr] ... | [INFO] [stderr] 150 | | } [INFO] [stderr] 151 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 182 | self.e_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | self.e_machine.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_machine` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:205:9 [INFO] [stderr] | [INFO] [stderr] 205 | self.e_version.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:210:23 [INFO] [stderr] | [INFO] [stderr] 210 | VarSize::from(self.e_entry.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_entry` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | self.e_phoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:220:9 [INFO] [stderr] | [INFO] [stderr] 220 | self.e_shoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:225:23 [INFO] [stderr] | [INFO] [stderr] 225 | VarSize::from(self.e_flags.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:230:9 [INFO] [stderr] | [INFO] [stderr] 230 | self.e_ehsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_ehsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:235:9 [INFO] [stderr] | [INFO] [stderr] 235 | self.e_phentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:240:9 [INFO] [stderr] | [INFO] [stderr] 240 | self.e_phnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:245:9 [INFO] [stderr] | [INFO] [stderr] 245 | self.e_shentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | self.e_shnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header32.rs:255:9 [INFO] [stderr] | [INFO] [stderr] 255 | self.e_shstrndx.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shstrndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header64.rs:64:1 [INFO] [stderr] | [INFO] [stderr] 64 | / fn complete<'a>(buffer: &'a [u8], x: E64Pre, header: ElfMagicNumbers) [INFO] [stderr] 65 | | -> Elf64Header<'a> [INFO] [stderr] 66 | | { [INFO] [stderr] 67 | | Elf64Header { [INFO] [stderr] ... | [INFO] [stderr] 82 | | } [INFO] [stderr] 83 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header64.rs:124:1 [INFO] [stderr] | [INFO] [stderr] 124 | / pub fn parse_elf64_header<'a>(b: &'a [u8]) [INFO] [stderr] 125 | | -> IResult<&'a [u8], Elf64Header<'a>> [INFO] [stderr] 126 | | { [INFO] [stderr] 127 | | [INFO] [stderr] ... | [INFO] [stderr] 149 | | } [INFO] [stderr] 150 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:181:9 [INFO] [stderr] | [INFO] [stderr] 181 | self.e_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:187:9 [INFO] [stderr] | [INFO] [stderr] 187 | self.e_machine.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_machine` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | self.e_version.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:208:23 [INFO] [stderr] | [INFO] [stderr] 208 | VarSize::from(self.e_entry.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_entry` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:213:9 [INFO] [stderr] | [INFO] [stderr] 213 | self.e_phoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | self.e_shoff.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shoff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:223:23 [INFO] [stderr] | [INFO] [stderr] 223 | VarSize::from(self.e_flags.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:228:9 [INFO] [stderr] | [INFO] [stderr] 228 | self.e_ehsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_ehsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | self.e_phentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:238:9 [INFO] [stderr] | [INFO] [stderr] 238 | self.e_phnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_phnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:243:9 [INFO] [stderr] | [INFO] [stderr] 243 | self.e_shentsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shentsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | self.e_shnum.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shnum` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/header/header64.rs:253:9 [INFO] [stderr] | [INFO] [stderr] 253 | self.e_shstrndx.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.e_shstrndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header.rs:138:1 [INFO] [stderr] | [INFO] [stderr] 138 | / fn elf64<'a>(b: &'a [u8]) -> IResult<&'a [u8],ElfHeaderBase<'a>> { [INFO] [stderr] 139 | | match parse_elf64_header(b) { [INFO] [stderr] 140 | | IResult::Incomplete(n) => IResult::Incomplete(n), [INFO] [stderr] 141 | | IResult::Error(e) => IResult::Error(e), [INFO] [stderr] 142 | | IResult::Done(x,y) => IResult::Done(x,ElfHeaderBase{ data: Arc::new(y) }) [INFO] [stderr] 143 | | } [INFO] [stderr] 144 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header.rs:145:1 [INFO] [stderr] | [INFO] [stderr] 145 | / fn elf32<'a>(b: &'a [u8]) -> IResult<&'a [u8],ElfHeaderBase<'a>> { [INFO] [stderr] 146 | | match parse_elf32_header(b) { [INFO] [stderr] 147 | | IResult::Incomplete(n) => IResult::Incomplete(n), [INFO] [stderr] 148 | | IResult::Error(e) => IResult::Error(e), [INFO] [stderr] 149 | | IResult::Done(x,y) => IResult::Done(x,ElfHeaderBase{ data: Arc::new(y) }) [INFO] [stderr] 150 | | } [INFO] [stderr] 151 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/header/header.rs:155:1 [INFO] [stderr] | [INFO] [stderr] 155 | / pub fn parse_elf<'a>(buffer: &'a [u8]) [INFO] [stderr] 156 | | -> Result,Fault> [INFO] [stderr] 157 | | { [INFO] [stderr] 158 | | match parse_elf_header(buffer) { [INFO] [stderr] ... | [INFO] [stderr] 162 | | } [INFO] [stderr] 163 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/varsize.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | / match self { [INFO] [stderr] 20 | | &VarSize::Bits64(ref v) => write!(f, "64bit {:#016X}", v.clone()), [INFO] [stderr] 21 | | &VarSize::Bits32(ref v) => write!(f, "32bit {:#016X}", v.clone()), [INFO] [stderr] 22 | | &VarSize::Bits16(ref v) => write!(f, "16bit {:#016X}", v.clone()), [INFO] [stderr] 23 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 19 | match *self { [INFO] [stderr] 20 | VarSize::Bits64(ref v) => write!(f, "64bit {:#016X}", v.clone()), [INFO] [stderr] 21 | VarSize::Bits32(ref v) => write!(f, "32bit {:#016X}", v.clone()), [INFO] [stderr] 22 | VarSize::Bits16(ref v) => write!(f, "16bit {:#016X}", v.clone()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/phdr/flags.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | fn get_attributes<'a>(&'a self) -> &'a [Attributes]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/phdr/flags.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | / self.get_attributes() [INFO] [stderr] 13 | | .iter() [INFO] [stderr] 14 | | .filter(|x| **x == Attributes::Execute) [INFO] [stderr] 15 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::filter_next)] on by default [INFO] [stderr] = note: replace `filter(|x| **x == Attributes::Execute).next()` with `find(|x| **x == Attributes::Execute)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/phdr/flags.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | / self.get_attributes() [INFO] [stderr] 20 | | .iter() [INFO] [stderr] 21 | | .filter(|x| **x == Attributes::Write) [INFO] [stderr] 22 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == Attributes::Write).next()` with `find(|x| **x == Attributes::Write)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/phdr/flags.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | / self.get_attributes() [INFO] [stderr] 27 | | .iter() [INFO] [stderr] 28 | | .filter(|x| **x == Attributes::Read) [INFO] [stderr] 29 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == Attributes::Read).next()` with `find(|x| **x == Attributes::Read)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/flags.rs:42:21 [INFO] [stderr] | [INFO] [stderr] 42 | .filter(|v| v.1.clone() & x > 0) [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/phdr/ph_type.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: ProgramHeaderType; [INFO] [stderr] 5 | | inner_type: u32; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 31 | | }; [INFO] [stderr] 32 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:83:31 [INFO] [stderr] | [INFO] [stderr] 83 | p_offset: p.p_offset.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:84:30 [INFO] [stderr] | [INFO] [stderr] 84 | p_vaddr: p.p_vaddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:85:30 [INFO] [stderr] | [INFO] [stderr] 85 | p_paddr: p.p_paddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:86:31 [INFO] [stderr] | [INFO] [stderr] 86 | p_filesz: p.p_filesz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:87:30 [INFO] [stderr] | [INFO] [stderr] 87 | p_memsz: p.p_memsz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:88:47 [INFO] [stderr] | [INFO] [stderr] 88 | p_flags: build_attributes(p.p_flags.clone()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:89:30 [INFO] [stderr] | [INFO] [stderr] 89 | p_align: p.p_align.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:90:29 [INFO] [stderr] | [INFO] [stderr] 90 | p_type: p.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/phdr/phdr32.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | / fn get_attributes<'c>(&'c self) -> &'c [Attributes] { [INFO] [stderr] 171 | | &self.p_flags [INFO] [stderr] 172 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | self.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 234 | self.p_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:238:23 [INFO] [stderr] | [INFO] [stderr] 238 | VarSize::from(self.p_vaddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:242:23 [INFO] [stderr] | [INFO] [stderr] 242 | VarSize::from(self.p_paddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | self.p_filesz.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:250:23 [INFO] [stderr] | [INFO] [stderr] 250 | VarSize::from(self.p_memsz.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr32.rs:254:23 [INFO] [stderr] | [INFO] [stderr] 254 | VarSize::from(self.p_align.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:85:31 [INFO] [stderr] | [INFO] [stderr] 85 | p_offset: p.p_offset.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:86:30 [INFO] [stderr] | [INFO] [stderr] 86 | p_vaddr: p.p_vaddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:87:30 [INFO] [stderr] | [INFO] [stderr] 87 | p_paddr: p.p_paddr.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:88:31 [INFO] [stderr] | [INFO] [stderr] 88 | p_filesz: p.p_filesz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:89:30 [INFO] [stderr] | [INFO] [stderr] 89 | p_memsz: p.p_memsz.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:90:47 [INFO] [stderr] | [INFO] [stderr] 90 | p_flags: build_attributes(p.p_flags.clone()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:91:30 [INFO] [stderr] | [INFO] [stderr] 91 | p_align: p.p_align.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:92:29 [INFO] [stderr] | [INFO] [stderr] 92 | p_type: p.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `p.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/phdr/phdr64.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | / fn get_attributes<'c>(&'c self) -> &'c [Attributes] { [INFO] [stderr] 171 | | &self.p_flags [INFO] [stderr] 172 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | self.p_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 234 | self.p_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:238:23 [INFO] [stderr] | [INFO] [stderr] 238 | VarSize::from(self.p_vaddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_vaddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:242:23 [INFO] [stderr] | [INFO] [stderr] 242 | VarSize::from(self.p_paddr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_paddr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | self.p_filesz.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_filesz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:250:23 [INFO] [stderr] | [INFO] [stderr] 250 | VarSize::from(self.p_memsz.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_memsz` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/phdr/phdr64.rs:254:23 [INFO] [stderr] | [INFO] [stderr] 254 | VarSize::from(self.p_align.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.p_align` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/traits.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | fn name<'b>(&'b self) -> &'b str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/traits.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | fn link_name<'b>(&'b self) -> Option<&'b str>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/traits.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | / fn sh_flags<'b>(&'b self) -> &'b [SectMemAttrib] { [INFO] [stderr] 19 | | self.get_attributes() [INFO] [stderr] 20 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:189:17 [INFO] [stderr] | [INFO] [stderr] 189 | / match self { [INFO] [stderr] 190 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 191 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#08X}", x), [INFO] [stderr] 192 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/section/section_type.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum! {@var_with_unknown [INFO] [stderr] 4 | | type_name: SectionKind; [INFO] [stderr] 5 | | inner_type: u32; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] ... | [INFO] [stderr] 37 | | }; [INFO] [stderr] 38 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/attributes.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn get_attributes<'a>(&'a self) -> &'a [SectMemAttrib]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | / self.get_attributes() [INFO] [stderr] 21 | | .iter() [INFO] [stderr] 22 | | .filter(|x| **x == SectMemAttrib::ExecInstr) [INFO] [stderr] 23 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::ExecInstr).next()` with `find(|x| **x == SectMemAttrib::ExecInstr)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | / self.get_attributes() [INFO] [stderr] 28 | | .iter() [INFO] [stderr] 29 | | .filter(|x| **x == SectMemAttrib::Write) [INFO] [stderr] 30 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::Write).next()` with `find(|x| **x == SectMemAttrib::Write)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | / self.get_attributes() [INFO] [stderr] 35 | | .iter() [INFO] [stderr] 36 | | .filter(|x| **x == SectMemAttrib::Alloc) [INFO] [stderr] 37 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::Alloc).next()` with `find(|x| **x == SectMemAttrib::Alloc)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | / self.get_attributes() [INFO] [stderr] 42 | | .iter() [INFO] [stderr] 43 | | .filter(|x| **x == SectMemAttrib::MaskOS) [INFO] [stderr] 44 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::MaskOS).next()` with `find(|x| **x == SectMemAttrib::MaskOS)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: called `filter(p).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(p)` instead. [INFO] [stderr] --> src/section/attributes.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | / self.get_attributes() [INFO] [stderr] 49 | | .iter() [INFO] [stderr] 50 | | .filter(|x| **x == SectMemAttrib::MaskProc) [INFO] [stderr] 51 | | .next() [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: replace `filter(|x| **x == SectMemAttrib::MaskProc).next()` with `find(|x| **x == SectMemAttrib::MaskProc)` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/attributes.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | .filter(|v| v.1.clone() & x > 0) [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:35:24 [INFO] [stderr] | [INFO] [stderr] 35 | let own_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:40:25 [INFO] [stderr] | [INFO] [stderr] 40 | let link_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let flags = build_attributes(data[index].sh_flags.clone() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:91:22 [INFO] [stderr] | [INFO] [stderr] 91 | let offset = self.sh_offset.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:92:20 [INFO] [stderr] | [INFO] [stderr] 92 | let size = self.sh_size.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section64.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | / fn get_attributes<'b>(&'b self) -> &'b [SectMemAttrib] { [INFO] [stderr] 192 | | &self.sh_flags [INFO] [stderr] 193 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:197:9 [INFO] [stderr] | [INFO] [stderr] 197 | self.sections[self.index].sh_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:295:9 [INFO] [stderr] | [INFO] [stderr] 295 | self.sections[self.index].sh_name.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section64.rs:298:5 [INFO] [stderr] | [INFO] [stderr] 298 | / fn name<'b>(&'b self) -> &'b str { [INFO] [stderr] 299 | | self.name.as_ref() [INFO] [stderr] 300 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section64.rs:302:5 [INFO] [stderr] | [INFO] [stderr] 302 | / fn link_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 303 | | match &self.link { [INFO] [stderr] 304 | | &Option::None => None, [INFO] [stderr] 305 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 306 | | } [INFO] [stderr] 307 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/section/section64.rs:303:9 [INFO] [stderr] | [INFO] [stderr] 303 | / match &self.link { [INFO] [stderr] 304 | | &Option::None => None, [INFO] [stderr] 305 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 306 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 303 | match self.link { [INFO] [stderr] 304 | Option::None => None, [INFO] [stderr] 305 | Option::Some(ref name) => Some(name) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:310:23 [INFO] [stderr] | [INFO] [stderr] 310 | VarSize::from(self.sections[self.index].sh_addr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:314:9 [INFO] [stderr] | [INFO] [stderr] 314 | self.sections[self.index].sh_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:318:9 [INFO] [stderr] | [INFO] [stderr] 318 | self.sections[self.index].sh_size.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:322:9 [INFO] [stderr] | [INFO] [stderr] 322 | self.sections[self.index].sh_link.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:326:9 [INFO] [stderr] | [INFO] [stderr] 326 | self.sections[self.index].sh_info.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:330:23 [INFO] [stderr] | [INFO] [stderr] 330 | VarSize::from(self.sections[self.index].sh_addralign.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addralign` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section64.rs:334:9 [INFO] [stderr] | [INFO] [stderr] 334 | self.sections[self.index].sh_entsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_entsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:35:24 [INFO] [stderr] | [INFO] [stderr] 35 | let own_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:40:25 [INFO] [stderr] | [INFO] [stderr] 40 | let link_name = data[index].sh_name.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | let flags = build_attributes(data[index].sh_flags.clone() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data[index].sh_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:94:22 [INFO] [stderr] | [INFO] [stderr] 94 | let offset = self.sh_offset.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:95:20 [INFO] [stderr] | [INFO] [stderr] 95 | let size = self.sh_size.clone() as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section32.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | / fn get_attributes<'b>(&'b self) -> &'b [SectMemAttrib] { [INFO] [stderr] 195 | | &self.sh_flags [INFO] [stderr] 196 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:200:9 [INFO] [stderr] | [INFO] [stderr] 200 | self.sections[self.index].sh_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:298:9 [INFO] [stderr] | [INFO] [stderr] 298 | self.sections[self.index].sh_name.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section32.rs:301:5 [INFO] [stderr] | [INFO] [stderr] 301 | / fn name<'b>(&'b self) -> &'b str { [INFO] [stderr] 302 | | self.name.as_ref() [INFO] [stderr] 303 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/section32.rs:305:5 [INFO] [stderr] | [INFO] [stderr] 305 | / fn link_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 306 | | match &self.link { [INFO] [stderr] 307 | | &Option::None => None, [INFO] [stderr] 308 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 309 | | } [INFO] [stderr] 310 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/section/section32.rs:306:9 [INFO] [stderr] | [INFO] [stderr] 306 | / match &self.link { [INFO] [stderr] 307 | | &Option::None => None, [INFO] [stderr] 308 | | &Option::Some(ref name) => Some(name) [INFO] [stderr] 309 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 306 | match self.link { [INFO] [stderr] 307 | Option::None => None, [INFO] [stderr] 308 | Option::Some(ref name) => Some(name) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:313:23 [INFO] [stderr] | [INFO] [stderr] 313 | VarSize::from(self.sections[self.index].sh_addr.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:317:9 [INFO] [stderr] | [INFO] [stderr] 317 | self.sections[self.index].sh_offset.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:321:9 [INFO] [stderr] | [INFO] [stderr] 321 | self.sections[self.index].sh_size.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:325:9 [INFO] [stderr] | [INFO] [stderr] 325 | self.sections[self.index].sh_link.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_link` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:329:9 [INFO] [stderr] | [INFO] [stderr] 329 | self.sections[self.index].sh_info.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:333:23 [INFO] [stderr] | [INFO] [stderr] 333 | VarSize::from(self.sections[self.index].sh_addralign.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_addralign` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/section/section32.rs:337:9 [INFO] [stderr] | [INFO] [stderr] 337 | self.sections[self.index].sh_entsize.clone() as usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.sections[self.index].sh_entsize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/section/section.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | / self.data.iter() [INFO] [stderr] 43 | | .filter(|x| x.name() == name) [INFO] [stderr] 44 | | .map(|x| x.clone()) [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 42 | self.data.iter() [INFO] [stderr] 43 | .filter(|x| x.name() == name).cloned() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/section/mod.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | / pub fn find_null<'a>(buffer: &'a [u8]) -> Option> { [INFO] [stderr] 18 | | let mut term = 0usize; [INFO] [stderr] 19 | | let len = buffer.len(); [INFO] [stderr] 20 | | for i in 0..len { [INFO] [stderr] ... | [INFO] [stderr] 29 | | Some(String::from_utf8_lossy(temp)) [INFO] [stderr] 30 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buffer`. [INFO] [stderr] --> src/section/mod.rs:20:14 [INFO] [stderr] | [INFO] [stderr] 20 | for i in 0..len { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 20 | for in buffer.iter().take(len) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/symtable/bind.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum!{@byte_parser_with_unknown [INFO] [stderr] 5 | | type_name: SymBinding; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] 7 | | trait_name: SymbolBinding; [INFO] [stderr] ... | [INFO] [stderr] 17 | | } [INFO] [stderr] 18 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/symtable/symtype.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / new_enum!{@byte_parser_with_unknown [INFO] [stderr] 5 | | type_name: SymType; [INFO] [stderr] 6 | | new_trait: { [INFO] [stderr] 7 | | trait_name: SymbolType; [INFO] [stderr] ... | [INFO] [stderr] 19 | | } [INFO] [stderr] 20 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/macros.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | / match self { [INFO] [stderr] 106 | | $( &$enum_type_name::$variant => write!(f, "{}", stringify!( $variant))),* [INFO] [stderr] 107 | | ,&$enum_type_name::Unknown(ref x) => write!(f, "Unknown({:#02X}", x), [INFO] [stderr] 108 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] ::: src/symtable/symprot.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / new_enum!{@byte_parser_with_unknown [INFO] [stderr] 4 | | type_name: SymProt; [INFO] [stderr] 5 | | new_trait: { [INFO] [stderr] 6 | | trait_name: SymbolProtection; [INFO] [stderr] ... | [INFO] [stderr] 15 | | } [INFO] [stderr] 16 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | let bind = data.st_info.clone() >> 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | let kind = data.st_info.clone() & 0x0Fu8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/symtable/symtable32.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | let entries = if data.len() != 0 && data.len() >= sym_entry_size { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | self.st_bind.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_bind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | self.st_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:179:9 [INFO] [stderr] | [INFO] [stderr] 179 | self.st_prot.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_prot` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/symtable32.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | / fn get_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 278 | | match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] 282 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/symtable/symtable32.rs:278:9 [INFO] [stderr] | [INFO] [stderr] 278 | / match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 278 | match self.name { [INFO] [stderr] 279 | Option::None => None, [INFO] [stderr] 280 | Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:286:23 [INFO] [stderr] | [INFO] [stderr] 286 | VarSize::from(self.st_value.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:291:23 [INFO] [stderr] | [INFO] [stderr] 291 | VarSize::from(self.st_size.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable32.rs:296:9 [INFO] [stderr] | [INFO] [stderr] 296 | self.st_shndx.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | let bind = data.st_info.clone() >> 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | let kind = data.st_info.clone() & 0x0Fu8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_info` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:51:23 [INFO] [stderr] | [INFO] [stderr] 51 | let st_size = data.st_size.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | let st_value = data.st_value.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:53:24 [INFO] [stderr] | [INFO] [stderr] 53 | let st_shndx = data.st_shndx.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `data.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/symtable/symtable64.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | let entries = if data.len() != 0 && data.len() >= sym_entry_size { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | self.st_bind.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_bind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | self.st_type.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:179:9 [INFO] [stderr] | [INFO] [stderr] 179 | self.st_prot.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_prot` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/symtable64.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | / fn get_name<'b>(&'b self) -> Option<&'b str> { [INFO] [stderr] 278 | | match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] 282 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/symtable/symtable64.rs:278:9 [INFO] [stderr] | [INFO] [stderr] 278 | / match &self.name { [INFO] [stderr] 279 | | &Option::None => None, [INFO] [stderr] 280 | | &Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] 281 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 278 | match self.name { [INFO] [stderr] 279 | Option::None => None, [INFO] [stderr] 280 | Option::Some(ref x) => Some(x.as_ref()) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:286:23 [INFO] [stderr] | [INFO] [stderr] 286 | VarSize::from(self.st_value.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:291:23 [INFO] [stderr] | [INFO] [stderr] 291 | VarSize::from(self.st_size.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/symtable/symtable64.rs:296:9 [INFO] [stderr] | [INFO] [stderr] 296 | self.st_shndx.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.st_shndx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/traits.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | fn get_name<'b>(&'b self) -> Option<&'b str>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/symtable/mod.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | / pub fn find_null<'a>(buffer: &'a [u8]) -> Option> { [INFO] [stderr] 20 | | let mut term = 0usize; [INFO] [stderr] 21 | | let len = buffer.len(); [INFO] [stderr] 22 | | for i in 0..len { [INFO] [stderr] ... | [INFO] [stderr] 31 | | Some(String::from_utf8_lossy(temp)) [INFO] [stderr] 32 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buffer`. [INFO] [stderr] --> src/symtable/mod.rs:22:14 [INFO] [stderr] | [INFO] [stderr] 22 | for i in 0..len { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 22 | for in buffer.iter().take(len) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:22:21 [INFO] [stderr] | [INFO] [stderr] 22 | let start = self.offset.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | let end = start + self.len.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.len` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | self.offset.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.offset` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/relocation/arcdata.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | self.len.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.len` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.38s [INFO] running `"docker" "inspect" "9eacba46b1a6ab314dfe912ac35b0a77543155e743c70c030e2a3af9ba7c24fc"` [INFO] running `"docker" "rm" "-f" "9eacba46b1a6ab314dfe912ac35b0a77543155e743c70c030e2a3af9ba7c24fc"` [INFO] [stdout] 9eacba46b1a6ab314dfe912ac35b0a77543155e743c70c030e2a3af9ba7c24fc