[INFO] crate miniz_oxide 0.2.0 is already in cache [INFO] extracting crate miniz_oxide 0.2.0 into work/ex/clippy-test-run/sources/stable/reg/miniz_oxide/0.2.0 [INFO] extracting crate miniz_oxide 0.2.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/miniz_oxide/0.2.0 [INFO] validating manifest of miniz_oxide-0.2.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 miniz_oxide-0.2.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 miniz_oxide-0.2.0 [INFO] finished frobbing miniz_oxide-0.2.0 [INFO] frobbed toml for miniz_oxide-0.2.0 written to work/ex/clippy-test-run/sources/stable/reg/miniz_oxide/0.2.0/Cargo.toml [INFO] started frobbing miniz_oxide-0.2.0 [INFO] finished frobbing miniz_oxide-0.2.0 [INFO] frobbed toml for miniz_oxide-0.2.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/miniz_oxide/0.2.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 miniz_oxide-0.2.0 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/miniz_oxide/0.2.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 -Dclippy::into_iter_on_array" "-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] b1d34846bd7611bd869b09e68c6d4874e4d61947fa67bb39d33565c2e077ab4e [INFO] running `"docker" "start" "-a" "b1d34846bd7611bd869b09e68c6d4874e4d61947fa67bb39d33565c2e077ab4e"` [INFO] [stderr] Checking miniz_oxide v0.2.0 (/opt/crater/workdir) [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:303:1 [INFO] [stderr] | [INFO] [stderr] 303 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deprecated_cfg_attr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:310:1 [INFO] [stderr] | [INFO] [stderr] 310 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:317:1 [INFO] [stderr] | [INFO] [stderr] 317 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:325:1 [INFO] [stderr] | [INFO] [stderr] 325 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:59:1 [INFO] [stderr] | [INFO] [stderr] 59 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:117:1 [INFO] [stderr] | [INFO] [stderr] 117 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:130:1 [INFO] [stderr] | [INFO] [stderr] 130 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:142:1 [INFO] [stderr] | [INFO] [stderr] 142 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/deflate/core.rs:1227:13 [INFO] [stderr] | [INFO] [stderr] 1227 | flags: flags, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `flags` [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: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:303:1 [INFO] [stderr] | [INFO] [stderr] 303 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deprecated_cfg_attr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:310:1 [INFO] [stderr] | [INFO] [stderr] 310 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:317:1 [INFO] [stderr] | [INFO] [stderr] 317 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/inflate/core.rs:325:1 [INFO] [stderr] | [INFO] [stderr] 325 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:59:1 [INFO] [stderr] | [INFO] [stderr] 59 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:117:1 [INFO] [stderr] | [INFO] [stderr] 117 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:130:1 [INFO] [stderr] | [INFO] [stderr] 130 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/deflate/core.rs:142:1 [INFO] [stderr] | [INFO] [stderr] 142 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/deflate/core.rs:1227:13 [INFO] [stderr] | [INFO] [stderr] 1227 | flags: flags, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `flags` [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: long literal lacking separators [INFO] [stderr] --> src/inflate/core.rs:1772:39 [INFO] [stderr] | [INFO] [stderr] 1772 | assert_eq!(masked_lookup(llt, 0b00001100), (0, 8)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_1100` [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/inflate/core.rs:1773:39 [INFO] [stderr] | [INFO] [stderr] 1773 | assert_eq!(masked_lookup(llt, 0b00011110), (72, 8)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0001_1110` [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/inflate/core.rs:1774:39 [INFO] [stderr] | [INFO] [stderr] 1774 | assert_eq!(masked_lookup(llt, 0b01011110), (74, 8)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0101_1110` [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/inflate/core.rs:1775:39 [INFO] [stderr] | [INFO] [stderr] 1775 | assert_eq!(masked_lookup(llt, 0b11111101), (143, 8)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1111_1101` [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/inflate/core.rs:1776:39 [INFO] [stderr] | [INFO] [stderr] 1776 | assert_eq!(masked_lookup(llt, 0b000010011), (144, 9)); [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `0b0_0001_0011` [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/inflate/core.rs:1777:39 [INFO] [stderr] | [INFO] [stderr] 1777 | assert_eq!(masked_lookup(llt, 0b111111111), (255, 9)); [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `0b1_1111_1111` [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/inflate/core.rs:1778:39 [INFO] [stderr] | [INFO] [stderr] 1778 | assert_eq!(masked_lookup(llt, 0b00000000), (256, 7)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_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/inflate/core.rs:1779:39 [INFO] [stderr] | [INFO] [stderr] 1779 | assert_eq!(masked_lookup(llt, 0b1110100), (279, 7)); [INFO] [stderr] | ^^^^^^^^^ help: consider: `0b111_0100` [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/inflate/core.rs:1780:39 [INFO] [stderr] | [INFO] [stderr] 1780 | assert_eq!(masked_lookup(llt, 0b00000011), (280, 8)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0011` [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/inflate/core.rs:1781:39 [INFO] [stderr] | [INFO] [stderr] 1781 | assert_eq!(masked_lookup(llt, 0b11100011), (287, 8)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1110_0011` [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: unused import: `TINFLStatus` [INFO] [stderr] --> src/deflate/core.rs:2166:40 [INFO] [stderr] | [INFO] [stderr] 2166 | use ::inflate::{decompress_to_vec, TINFLStatus}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:43:33 [INFO] [stderr] | [INFO] [stderr] 43 | self.look_up[(bit_buf & (FAST_LOOKUP_SIZE - 1) as BitBuffer) as usize] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(FAST_LOOKUP_SIZE - 1)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:55:22 [INFO] [stderr] | [INFO] [stderr] 55 | symbol = self.tree[(!symbol + ((bit_buf >> code_len) & 1) as i32) as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.tree[(!symbol + ((bit_buf >> code_len) & 1) as i32) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/inflate/core.rs:83:35 [INFO] [stderr] | [INFO] [stderr] 83 | Some(self.tree_lookup(symbol.into(), bit_buf, FAST_LOOKUP_BITS.into())) [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider removing `.into()`: `symbol` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `inflate::core::DecompressorOxide` [INFO] [stderr] --> src/inflate/core.rs:171:5 [INFO] [stderr] | [INFO] [stderr] 171 | / pub fn new() -> DecompressorOxide { [INFO] [stderr] 172 | | DecompressorOxide::default() [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 169 | impl Default for inflate::core::DecompressorOxide { [INFO] [stderr] 170 | fn default() -> Self { [INFO] [stderr] 171 | Self::new() [INFO] [stderr] 172 | } [INFO] [stderr] 173 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/inflate/core.rs:270:19 [INFO] [stderr] | [INFO] [stderr] 270 | fn is_failure(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u16`) [INFO] [stderr] --> src/inflate/core.rs:353:38 [INFO] [stderr] | [INFO] [stderr] 353 | unsafe { ptr::read_unaligned(two_bytes.as_ptr() as *const u16) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cast_ptr_alignment)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/inflate/core.rs:371:38 [INFO] [stderr] | [INFO] [stderr] 371 | unsafe { ptr::read_unaligned(four_bytes.as_ptr() as *const u32) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:387:22 [INFO] [stderr] | [INFO] [stderr] 387 | l.bit_buf |= (read_u32_le(in_iter) as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(read_u32_le(in_iter))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/inflate/core.rs:407:44 [INFO] [stderr] | [INFO] [stderr] 407 | let mut data = ptr::read_unaligned((*buf).as_ptr().offset(from) as *const u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u32`) [INFO] [stderr] --> src/inflate/core.rs:408:30 [INFO] [stderr] | [INFO] [stderr] 408 | ptr::write_unaligned((*buf).as_mut_ptr().offset(to) as *mut u32, data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/inflate/core.rs:410:36 [INFO] [stderr] | [INFO] [stderr] 410 | data = ptr::read_unaligned((*buf).as_ptr().offset(from + 4) as *const u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u32`) [INFO] [stderr] --> src/inflate/core.rs:411:30 [INFO] [stderr] | [INFO] [stderr] 411 | ptr::write_unaligned((*buf).as_mut_ptr().offset(to + 4) as *mut u32, data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:488:32 [INFO] [stderr] | [INFO] [stderr] 488 | let mut temp = r.tables[table].fast_lookup(l.bit_buf) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(r.tables[table].fast_lookup(l.bit_buf))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:496:40 [INFO] [stderr] | [INFO] [stderr] 496 | let mut code_len = FAST_LOOKUP_BITS as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(FAST_LOOKUP_BITS)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:498:32 [INFO] [stderr] | [INFO] [stderr] 498 | temp = r.tables[table] [INFO] [stderr] | ________________________________^ [INFO] [stderr] 499 | | .tree[(!temp + ((l.bit_buf >> code_len) & 1) as i32) as usize] as i32; [INFO] [stderr] | |_________________________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 498 | temp = i32::from(r.tables[table] [INFO] [stderr] 499 | .tree[(!temp + ((l.bit_buf >> code_len) & 1) as i32) as usize]); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:525:30 [INFO] [stderr] | [INFO] [stderr] 525 | l.bit_buf |= (byte as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(byte)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:537:26 [INFO] [stderr] | [INFO] [stderr] 537 | l.bit_buf |= (read_u16_le(in_iter) as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(read_u16_le(in_iter))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:543:22 [INFO] [stderr] | [INFO] [stderr] 543 | let mut symbol = r.tables[table].fast_lookup(l.bit_buf) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(r.tables[table].fast_lookup(l.bit_buf))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:554:66 [INFO] [stderr] | [INFO] [stderr] 554 | let res = r.tables[table].tree_lookup(symbol, l.bit_buf, FAST_LOOKUP_BITS as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(FAST_LOOKUP_BITS)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: Variable in the condition are not mutated in the loop body. This either leads to an infinite or to a never running loop. [INFO] [stderr] --> src/inflate/core.rs:591:11 [INFO] [stderr] | [INFO] [stderr] 591 | while l.num_bits < amount { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::while_immutable_condition)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_immutable_condition [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:593:26 [INFO] [stderr] | [INFO] [stderr] 593 | l.bit_buf |= (byte as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(byte)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:686:26 [INFO] [stderr] | [INFO] [stderr] 686 | let k = ((code_size as i16) << 9) | symbol_index as i16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i16::from(code_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: unused label `'litlen` [INFO] [stderr] --> src/inflate/core.rs:866:9 [INFO] [stderr] | [INFO] [stderr] 866 | / 'litlen: loop { [INFO] [stderr] 867 | | // This function assumes that there is at least 259 bytes left in the output buffer, [INFO] [stderr] 868 | | // and that there is at least 14 bytes left in the input buffer. 14 input bytes: [INFO] [stderr] 869 | | // 15 (prev lit) + 15 (length) + 5 (length extra) + 15 (dist) [INFO] [stderr] ... | [INFO] [stderr] 917 | | } [INFO] [stderr] 918 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_label)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_label [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:937:27 [INFO] [stderr] | [INFO] [stderr] 937 | l.num_extra = LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:938:25 [INFO] [stderr] | [INFO] [stderr] 938 | l.counter = LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:965:31 [INFO] [stderr] | [INFO] [stderr] 965 | l.num_extra = DIST_EXTRA[symbol as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_EXTRA[symbol as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:966:26 [INFO] [stderr] | [INFO] [stderr] 966 | l.dist = DIST_BASE[symbol as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_BASE[symbol as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 71 [INFO] [stderr] --> src/inflate/core.rs:1052:1 [INFO] [stderr] | [INFO] [stderr] 1052 | / fn decompress_inner( [INFO] [stderr] 1053 | | r: &mut DecompressorOxide, [INFO] [stderr] 1054 | | in_buf: &[u8], [INFO] [stderr] 1055 | | out_cur: &mut Cursor<&mut [u8]>, [INFO] [stderr] ... | [INFO] [stderr] 1675 | | ) [INFO] [stderr] 1676 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1115:35 [INFO] [stderr] | [INFO] [stderr] 1115 | r.z_header0 = cmf as u32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(cmf)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1122:35 [INFO] [stderr] | [INFO] [stderr] 1122 | r.z_header1 = flg as u32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(flg)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1177:34 [INFO] [stderr] | [INFO] [stderr] 1177 | let length = r.raw_header[0] as u16 | ((r.raw_header[1] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1177:60 [INFO] [stderr] | [INFO] [stderr] 1177 | let length = r.raw_header[0] as u16 | ((r.raw_header[1] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1178:33 [INFO] [stderr] | [INFO] [stderr] 1178 | let check = r.raw_header[2] as u16 | ((r.raw_header[3] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1178:59 [INFO] [stderr] | [INFO] [stderr] 1178 | let check = r.raw_header[2] as u16 | ((r.raw_header[3] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[3])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1263:43 [INFO] [stderr] | [INFO] [stderr] 1263 | bits as u32 + MIN_TABLE_SIZES[l.counter as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(MIN_TABLE_SIZES[l.counter as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1459:35 [INFO] [stderr] | [INFO] [stderr] 1459 | l.num_extra = LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1460:33 [INFO] [stderr] | [INFO] [stderr] 1460 | l.counter = LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1491:35 [INFO] [stderr] | [INFO] [stderr] 1491 | l.num_extra = DIST_EXTRA[symbol as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_EXTRA[symbol as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1492:30 [INFO] [stderr] | [INFO] [stderr] 1492 | l.dist = DIST_BASE[symbol as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_BASE[symbol as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:43:33 [INFO] [stderr] | [INFO] [stderr] 43 | self.look_up[(bit_buf & (FAST_LOOKUP_SIZE - 1) as BitBuffer) as usize] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(FAST_LOOKUP_SIZE - 1)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:55:22 [INFO] [stderr] | [INFO] [stderr] 55 | symbol = self.tree[(!symbol + ((bit_buf >> code_len) & 1) as i32) as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.tree[(!symbol + ((bit_buf >> code_len) & 1) as i32) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/inflate/core.rs:83:35 [INFO] [stderr] | [INFO] [stderr] 83 | Some(self.tree_lookup(symbol.into(), bit_buf, FAST_LOOKUP_BITS.into())) [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider removing `.into()`: `symbol` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1609:44 [INFO] [stderr] | [INFO] [stderr] 1609 | r.z_adler32 |= byte as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(byte)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/inflate/core.rs:1638:15 [INFO] [stderr] | [INFO] [stderr] 1638 | r.state = state.into(); [INFO] [stderr] | ^^^^^^^^^^^^ help: consider removing `.into()`: `state` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `inflate::core::DecompressorOxide` [INFO] [stderr] --> src/inflate/core.rs:171:5 [INFO] [stderr] | [INFO] [stderr] 171 | / pub fn new() -> DecompressorOxide { [INFO] [stderr] 172 | | DecompressorOxide::default() [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 169 | impl Default for inflate::core::DecompressorOxide { [INFO] [stderr] 170 | fn default() -> Self { [INFO] [stderr] 171 | Self::new() [INFO] [stderr] 172 | } [INFO] [stderr] 173 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/inflate/core.rs:270:19 [INFO] [stderr] | [INFO] [stderr] 270 | fn is_failure(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u16`) [INFO] [stderr] --> src/inflate/core.rs:353:38 [INFO] [stderr] | [INFO] [stderr] 353 | unsafe { ptr::read_unaligned(two_bytes.as_ptr() as *const u16) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cast_ptr_alignment)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/inflate/core.rs:371:38 [INFO] [stderr] | [INFO] [stderr] 371 | unsafe { ptr::read_unaligned(four_bytes.as_ptr() as *const u32) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:387:22 [INFO] [stderr] | [INFO] [stderr] 387 | l.bit_buf |= (read_u32_le(in_iter) as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(read_u32_le(in_iter))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/inflate/core.rs:407:44 [INFO] [stderr] | [INFO] [stderr] 407 | let mut data = ptr::read_unaligned((*buf).as_ptr().offset(from) as *const u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u32`) [INFO] [stderr] --> src/inflate/core.rs:408:30 [INFO] [stderr] | [INFO] [stderr] 408 | ptr::write_unaligned((*buf).as_mut_ptr().offset(to) as *mut u32, data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/inflate/core.rs:410:36 [INFO] [stderr] | [INFO] [stderr] 410 | data = ptr::read_unaligned((*buf).as_ptr().offset(from + 4) as *const u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u32`) [INFO] [stderr] --> src/inflate/core.rs:411:30 [INFO] [stderr] | [INFO] [stderr] 411 | ptr::write_unaligned((*buf).as_mut_ptr().offset(to + 4) as *mut u32, data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:488:32 [INFO] [stderr] | [INFO] [stderr] 488 | let mut temp = r.tables[table].fast_lookup(l.bit_buf) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(r.tables[table].fast_lookup(l.bit_buf))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:496:40 [INFO] [stderr] | [INFO] [stderr] 496 | let mut code_len = FAST_LOOKUP_BITS as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(FAST_LOOKUP_BITS)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:498:32 [INFO] [stderr] | [INFO] [stderr] 498 | temp = r.tables[table] [INFO] [stderr] | ________________________________^ [INFO] [stderr] 499 | | .tree[(!temp + ((l.bit_buf >> code_len) & 1) as i32) as usize] as i32; [INFO] [stderr] | |_________________________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 498 | temp = i32::from(r.tables[table] [INFO] [stderr] 499 | .tree[(!temp + ((l.bit_buf >> code_len) & 1) as i32) as usize]); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:525:30 [INFO] [stderr] | [INFO] [stderr] 525 | l.bit_buf |= (byte as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(byte)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:537:26 [INFO] [stderr] | [INFO] [stderr] 537 | l.bit_buf |= (read_u16_le(in_iter) as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(read_u16_le(in_iter))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:543:22 [INFO] [stderr] | [INFO] [stderr] 543 | let mut symbol = r.tables[table].fast_lookup(l.bit_buf) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(r.tables[table].fast_lookup(l.bit_buf))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:554:66 [INFO] [stderr] | [INFO] [stderr] 554 | let res = r.tables[table].tree_lookup(symbol, l.bit_buf, FAST_LOOKUP_BITS as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(FAST_LOOKUP_BITS)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: Variable in the condition are not mutated in the loop body. This either leads to an infinite or to a never running loop. [INFO] [stderr] --> src/inflate/core.rs:591:11 [INFO] [stderr] | [INFO] [stderr] 591 | while l.num_bits < amount { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::while_immutable_condition)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_immutable_condition [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:593:26 [INFO] [stderr] | [INFO] [stderr] 593 | l.bit_buf |= (byte as BitBuffer) << l.num_bits; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(byte)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/deflate/core.rs:296:26 [INFO] [stderr] | [INFO] [stderr] 296 | ptr::write_unaligned(slice.as_mut_ptr().offset(pos as isize) as *mut u16, val); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/deflate/core.rs:296:26 [INFO] [stderr] | [INFO] [stderr] 296 | ptr::write_unaligned(slice.as_mut_ptr().offset(pos as isize) as *mut u16, val); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `slice.as_mut_ptr().add(pos)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_offset_with_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:686:26 [INFO] [stderr] | [INFO] [stderr] 686 | let k = ((code_size as i16) << 9) | symbol_index as i16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i16::from(code_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/deflate/core.rs:316:29 [INFO] [stderr] | [INFO] [stderr] 316 | ptr::read_unaligned(slice.as_ptr().offset(pos as isize) as *mut u16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/deflate/core.rs:316:29 [INFO] [stderr] | [INFO] [stderr] 316 | ptr::read_unaligned(slice.as_ptr().offset(pos as isize) as *mut u16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `slice.as_ptr().add(pos)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: unused label `'litlen` [INFO] [stderr] --> src/inflate/core.rs:866:9 [INFO] [stderr] | [INFO] [stderr] 866 | / 'litlen: loop { [INFO] [stderr] 867 | | // This function assumes that there is at least 259 bytes left in the output buffer, [INFO] [stderr] 868 | | // and that there is at least 14 bytes left in the input buffer. 14 input bytes: [INFO] [stderr] 869 | | // 15 (prev lit) + 15 (length) + 5 (length extra) + 15 (dist) [INFO] [stderr] ... | [INFO] [stderr] 917 | | } [INFO] [stderr] 918 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_label)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_label [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:937:27 [INFO] [stderr] | [INFO] [stderr] 937 | l.num_extra = LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:938:25 [INFO] [stderr] | [INFO] [stderr] 938 | l.counter = LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:965:31 [INFO] [stderr] | [INFO] [stderr] 965 | l.num_extra = DIST_EXTRA[symbol as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_EXTRA[symbol as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: called `map(f)` on an Option value where `f` is a unit closure [INFO] [stderr] --> src/deflate/core.rs:479:13 [INFO] [stderr] | [INFO] [stderr] 479 | self.in_buf_size.as_mut().map(|size| **size = in_size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- [INFO] [stderr] | | [INFO] [stderr] | help: try this: `if let Some(size) = self.in_buf_size.as_mut() { ... }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::option_map_unit_fn)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:966:26 [INFO] [stderr] | [INFO] [stderr] 966 | l.dist = DIST_BASE[symbol as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_BASE[symbol as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: called `map(f)` on an Option value where `f` is a unit closure [INFO] [stderr] --> src/deflate/core.rs:483:13 [INFO] [stderr] | [INFO] [stderr] 483 | self.out_buf_size.as_mut().map(|size| **size = out_size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- [INFO] [stderr] | | [INFO] [stderr] | help: try this: `if let Some(size) = self.out_buf_size.as_mut() { ... }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 71 [INFO] [stderr] --> src/inflate/core.rs:1052:1 [INFO] [stderr] | [INFO] [stderr] 1052 | / fn decompress_inner( [INFO] [stderr] 1053 | | r: &mut DecompressorOxide, [INFO] [stderr] 1054 | | in_buf: &[u8], [INFO] [stderr] 1055 | | out_cur: &mut Cursor<&mut [u8]>, [INFO] [stderr] ... | [INFO] [stderr] 1675 | | ) [INFO] [stderr] 1676 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u64`) [INFO] [stderr] --> src/deflate/core.rs:570:21 [INFO] [stderr] | [INFO] [stderr] 570 | let inner = &mut ((*output.inner.get_mut())[pos]) as *mut u8 as *mut u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:577:31 [INFO] [stderr] | [INFO] [stderr] 577 | SeekFrom::Current((self.bits_in >> 3) as i64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(self.bits_in >> 3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1115:35 [INFO] [stderr] | [INFO] [stderr] 1115 | r.z_header0 = cmf as u32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(cmf)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1122:35 [INFO] [stderr] | [INFO] [stderr] 1122 | r.z_header1 = flg as u32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(flg)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1177:34 [INFO] [stderr] | [INFO] [stderr] 1177 | let length = r.raw_header[0] as u16 | ((r.raw_header[1] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1177:60 [INFO] [stderr] | [INFO] [stderr] 1177 | let length = r.raw_header[0] as u16 | ((r.raw_header[1] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1178:33 [INFO] [stderr] | [INFO] [stderr] 1178 | let check = r.raw_header[2] as u16 | ((r.raw_header[3] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1178:59 [INFO] [stderr] | [INFO] [stderr] 1178 | let check = r.raw_header[2] as u16 | ((r.raw_header[3] as u16) << 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.raw_header[3])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1263:43 [INFO] [stderr] | [INFO] [stderr] 1263 | bits as u32 + MIN_TABLE_SIZES[l.counter as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(MIN_TABLE_SIZES[l.counter as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `pass` is used to index `hist` [INFO] [stderr] --> src/deflate/core.rs:701:21 [INFO] [stderr] | [INFO] [stderr] 701 | for pass in 0..n_passes { [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] 701 | for (pass, ) in hist.iter().enumerate().take(n_passes) { [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `offsets` [INFO] [stderr] --> src/deflate/core.rs:704:22 [INFO] [stderr] | [INFO] [stderr] 704 | for i in 0..256 { [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] 704 | for (i, ) in offsets.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1459:35 [INFO] [stderr] | [INFO] [stderr] 1459 | l.num_extra = LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_EXTRA[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1460:33 [INFO] [stderr] | [INFO] [stderr] 1460 | l.counter = LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LENGTH_BASE[(l.counter - 257) as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1491:35 [INFO] [stderr] | [INFO] [stderr] 1491 | l.num_extra = DIST_EXTRA[symbol as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_EXTRA[symbol as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1492:30 [INFO] [stderr] | [INFO] [stderr] 1492 | l.dist = DIST_BASE[symbol as usize & BASE_EXTRA_MASK] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(DIST_BASE[symbol as usize & BASE_EXTRA_MASK])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/deflate/core.rs:787:31 [INFO] [stderr] | [INFO] [stderr] 787 | let total = num_codes[1..max_code_size + 1] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `1..=max_code_size` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/inflate/core.rs:1609:44 [INFO] [stderr] | [INFO] [stderr] 1609 | r.z_adler32 |= byte as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(byte)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/inflate/core.rs:1638:15 [INFO] [stderr] | [INFO] [stderr] 1638 | r.state = state.into(); [INFO] [stderr] | ^^^^^^^^^^^^ help: consider removing `.into()`: `state` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `num_codes` [INFO] [stderr] --> src/deflate/core.rs:856:22 [INFO] [stderr] | [INFO] [stderr] 856 | for i in 1..code_size_limit + 1 { [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] 856 | for (i, ) in num_codes.iter().enumerate().skip(1).take(code_size_limit) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/deflate/core.rs:856:22 [INFO] [stderr] | [INFO] [stderr] 856 | for i in 1..code_size_limit + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `1..=code_size_limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/deflate/core.rs:867:18 [INFO] [stderr] | [INFO] [stderr] 867 | for i in 2..code_size_limit + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `2..=code_size_limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1000:17 [INFO] [stderr] | [INFO] [stderr] 1000 | self.code_sizes[HUFF_CODES_TABLE][swizzle as usize] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.code_sizes[HUFF_CODES_TABLE][swizzle as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1012:17 [INFO] [stderr] | [INFO] [stderr] 1012 | self.codes[HUFF_CODES_TABLE][code] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.codes[HUFF_CODES_TABLE][code])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1013:17 [INFO] [stderr] | [INFO] [stderr] 1013 | self.code_sizes[HUFF_CODES_TABLE][code] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.code_sizes[HUFF_CODES_TABLE][code])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1017:21 [INFO] [stderr] | [INFO] [stderr] 1017 | packed_code_sizes[packed_code_size_index] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(packed_code_sizes[packed_code_size_index])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1117:42 [INFO] [stderr] | [INFO] [stderr] 1117 | let next_probe_pos = self.b.next[probe_pos as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.b.next[probe_pos as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1307:21 [INFO] [stderr] | [INFO] [stderr] 1307 | bit_buffer: output.bit_buffer as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(output.bit_buffer)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1314:21 [INFO] [stderr] | [INFO] [stderr] 1314 | flags = lz_code_buf[i] as u32 | 0x100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(lz_code_buf[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1334:17 [INFO] [stderr] | [INFO] [stderr] 1334 | huff.codes[0][LEN_SYM[match_len] as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(huff.codes[0][LEN_SYM[match_len] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1335:17 [INFO] [stderr] | [INFO] [stderr] 1335 | huff.code_sizes[0][LEN_SYM[match_len] as usize] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[0][LEN_SYM[match_len] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1338:36 [INFO] [stderr] | [INFO] [stderr] 1338 | match_len as u64 & BITMASKS[LEN_EXTRA[match_len] as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BITMASKS[LEN_EXTRA[match_len] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1339:17 [INFO] [stderr] | [INFO] [stderr] 1339 | LEN_EXTRA[match_len] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LEN_EXTRA[match_len])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1351:25 [INFO] [stderr] | [INFO] [stderr] 1351 | bb.put_fast(huff.codes[1][sym] as u64, huff.code_sizes[1][sym] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(huff.codes[1][sym])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1351:52 [INFO] [stderr] | [INFO] [stderr] 1351 | bb.put_fast(huff.codes[1][sym] as u64, huff.code_sizes[1][sym] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[1][sym])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1353:17 [INFO] [stderr] | [INFO] [stderr] 1353 | match_dist as u64 & BITMASKS[num_extra_bits as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(match_dist)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1353:37 [INFO] [stderr] | [INFO] [stderr] 1353 | match_dist as u64 & BITMASKS[num_extra_bits as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BITMASKS[num_extra_bits as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1365:21 [INFO] [stderr] | [INFO] [stderr] 1365 | huff.codes[0][lit as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(huff.codes[0][lit as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1366:21 [INFO] [stderr] | [INFO] [stderr] 1366 | huff.code_sizes[0][lit as usize] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[0][lit as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1388:21 [INFO] [stderr] | [INFO] [stderr] 1388 | output.put_bits(huff.codes[0][256] as u32, huff.code_sizes[0][256] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.codes[0][256])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1388:48 [INFO] [stderr] | [INFO] [stderr] 1388 | output.put_bits(huff.codes[0][256] as u32, huff.code_sizes[0][256] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[0][256])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/deflate/core.rs:1442:9 [INFO] [stderr] | [INFO] [stderr] 1442 | / let mut comp_success = false; [INFO] [stderr] 1443 | | if !use_raw_block { [INFO] [stderr] 1444 | | let use_static = (d.params.flags & TDEFL_FORCE_ALL_STATIC_BLOCKS != 0) || [INFO] [stderr] 1445 | | (d.lz.total_bytes < 48); [INFO] [stderr] 1446 | | comp_success = compress_block(&mut d.huff, &mut output, &d.lz, use_static)?; [INFO] [stderr] 1447 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let comp_success = if !use_raw_block { ..; compress_block(&mut d.huff, &mut output, &d.lz, use_static)? } else { false };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1459:64 [INFO] [stderr] | [INFO] [stderr] 1459 | (output.inner.position() - saved_buffer.pos + 1 >= d.lz.total_bytes as u64) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(d.lz.total_bytes)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1478:33 [INFO] [stderr] | [INFO] [stderr] 1478 | output.put_bits(d.dict.b.dict[pos as usize] as u32, 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(d.dict.b.dict[pos as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1585:29 [INFO] [stderr] | [INFO] [stderr] 1585 | let mut hash = ((dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize] as u32) << [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1587:17 [INFO] [stderr] | [INFO] [stderr] 1587 | (dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as usize] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1596:51 [INFO] [stderr] | [INFO] [stderr] 1596 | hash = ((hash << LZ_HASH_SHIFT) ^ (c as u32)) & [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(c)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1619:27 [INFO] [stderr] | [INFO] [stderr] 1619 | (((dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize] as u32) << [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1621:32 [INFO] [stderr] | [INFO] [stderr] 1621 | (((dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as [INFO] [stderr] | ________________________________^ [INFO] [stderr] 1622 | | usize] as u32) << [INFO] [stderr] | |______________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1621 | ((u32::from(dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as [INFO] [stderr] 1622 | usize]) << [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1624:35 [INFO] [stderr] | [INFO] [stderr] 1624 | (c as u32))) & [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(c)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 28 [INFO] [stderr] --> src/deflate/core.rs:1758:1 [INFO] [stderr] | [INFO] [stderr] 1758 | / fn compress_fast(d: &mut CompressorOxide, callback: &mut CallbackOxide) -> bool { [INFO] [stderr] 1759 | | let mut src_pos = d.params.src_pos; [INFO] [stderr] 1760 | | let mut lookahead_size = d.dict.lookahead_size; [INFO] [stderr] 1761 | | let mut lookahead_pos = d.dict.lookahead_pos; [INFO] [stderr] ... | [INFO] [stderr] 1978 | | true [INFO] [stderr] 1979 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1810:33 [INFO] [stderr] | [INFO] [stderr] 1810 | let mut probe_pos = d.dict.b.hash[hash as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(d.dict.b.hash[hash as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/deflate/core.rs:282:30 [INFO] [stderr] | [INFO] [stderr] 282 | ptr::write_unaligned(slice.as_mut_ptr() as *mut u16, val); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1814:16 [INFO] [stderr] | [INFO] [stderr] 1814 | if cur_match_dist as u32 <= d.dict.size { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(cur_match_dist)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: this loop never actually loops [INFO] [stderr] --> src/deflate/core.rs:1826:37 [INFO] [stderr] | [INFO] [stderr] 1826 | cur_match_len = 'find_match: loop { [INFO] [stderr] | _____________________________________^ [INFO] [stderr] 1827 | | for _ in 0..32 { [INFO] [stderr] 1828 | | // # Unsafe [INFO] [stderr] 1829 | | // This loop has a fixed counter, so p_data and q_data will never be [INFO] [stderr] ... | [INFO] [stderr] 1854 | | }; [INFO] [stderr] 1855 | | }; [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::never_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#never_loop [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/deflate/core.rs:296:26 [INFO] [stderr] | [INFO] [stderr] 296 | ptr::write_unaligned(slice.as_mut_ptr().offset(pos as isize) as *mut u16, val); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/deflate/core.rs:296:26 [INFO] [stderr] | [INFO] [stderr] 296 | ptr::write_unaligned(slice.as_mut_ptr().offset(pos as isize) as *mut u16, val); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `slice.as_mut_ptr().add(pos)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_offset_with_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/deflate/core.rs:316:29 [INFO] [stderr] | [INFO] [stderr] 316 | ptr::read_unaligned(slice.as_ptr().offset(pos as isize) as *mut u16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/deflate/core.rs:316:29 [INFO] [stderr] | [INFO] [stderr] 316 | ptr::read_unaligned(slice.as_ptr().offset(pos as isize) as *mut u16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `slice.as_ptr().add(pos)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: called `map(f)` on an Option value where `f` is a unit closure [INFO] [stderr] --> src/deflate/core.rs:479:13 [INFO] [stderr] | [INFO] [stderr] 479 | self.in_buf_size.as_mut().map(|size| **size = in_size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- [INFO] [stderr] | | [INFO] [stderr] | help: try this: `if let Some(size) = self.in_buf_size.as_mut() { ... }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::option_map_unit_fn)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn [INFO] [stderr] [INFO] [stderr] warning: called `map(f)` on an Option value where `f` is a unit closure [INFO] [stderr] --> src/deflate/core.rs:483:13 [INFO] [stderr] | [INFO] [stderr] 483 | self.out_buf_size.as_mut().map(|size| **size = out_size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- [INFO] [stderr] | | [INFO] [stderr] | help: try this: `if let Some(size) = self.out_buf_size.as_mut() { ... }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn [INFO] [stderr] [INFO] [stderr] error: casting from `*mut u8` to a more-strictly-aligned pointer (`*mut u64`) [INFO] [stderr] --> src/deflate/core.rs:570:21 [INFO] [stderr] | [INFO] [stderr] 570 | let inner = &mut ((*output.inner.get_mut())[pos]) as *mut u8 as *mut u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:577:31 [INFO] [stderr] | [INFO] [stderr] 577 | SeekFrom::Current((self.bits_in >> 3) as i64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(self.bits_in >> 3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `pass` is used to index `hist` [INFO] [stderr] --> src/deflate/core.rs:701:21 [INFO] [stderr] | [INFO] [stderr] 701 | for pass in 0..n_passes { [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] 701 | for (pass, ) in hist.iter().enumerate().take(n_passes) { [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `offsets` [INFO] [stderr] --> src/deflate/core.rs:704:22 [INFO] [stderr] | [INFO] [stderr] 704 | for i in 0..256 { [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] 704 | for (i, ) in offsets.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/deflate/core.rs:787:31 [INFO] [stderr] | [INFO] [stderr] 787 | let total = num_codes[1..max_code_size + 1] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `1..=max_code_size` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `num_codes` [INFO] [stderr] --> src/deflate/core.rs:856:22 [INFO] [stderr] | [INFO] [stderr] 856 | for i in 1..code_size_limit + 1 { [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] 856 | for (i, ) in num_codes.iter().enumerate().skip(1).take(code_size_limit) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/deflate/core.rs:856:22 [INFO] [stderr] | [INFO] [stderr] 856 | for i in 1..code_size_limit + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `1..=code_size_limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/deflate/core.rs:867:18 [INFO] [stderr] | [INFO] [stderr] 867 | for i in 2..code_size_limit + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `2..=code_size_limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] error: aborting due to 11 previous errors [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1000:17 [INFO] [stderr] | [INFO] [stderr] 1000 | self.code_sizes[HUFF_CODES_TABLE][swizzle as usize] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.code_sizes[HUFF_CODES_TABLE][swizzle as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1012:17 [INFO] [stderr] | [INFO] [stderr] 1012 | self.codes[HUFF_CODES_TABLE][code] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.codes[HUFF_CODES_TABLE][code])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1013:17 [INFO] [stderr] | [INFO] [stderr] 1013 | self.code_sizes[HUFF_CODES_TABLE][code] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.code_sizes[HUFF_CODES_TABLE][code])` [INFO] [stderr] | [INFO] [stderr] error: Could not compile `miniz_oxide`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1017:21 [INFO] [stderr] | [INFO] [stderr] 1017 | packed_code_sizes[packed_code_size_index] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(packed_code_sizes[packed_code_size_index])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1117:42 [INFO] [stderr] | [INFO] [stderr] 1117 | let next_probe_pos = self.b.next[probe_pos as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.b.next[probe_pos as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1307:21 [INFO] [stderr] | [INFO] [stderr] 1307 | bit_buffer: output.bit_buffer as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(output.bit_buffer)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1314:21 [INFO] [stderr] | [INFO] [stderr] 1314 | flags = lz_code_buf[i] as u32 | 0x100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(lz_code_buf[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1334:17 [INFO] [stderr] | [INFO] [stderr] 1334 | huff.codes[0][LEN_SYM[match_len] as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(huff.codes[0][LEN_SYM[match_len] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1335:17 [INFO] [stderr] | [INFO] [stderr] 1335 | huff.code_sizes[0][LEN_SYM[match_len] as usize] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[0][LEN_SYM[match_len] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1338:36 [INFO] [stderr] | [INFO] [stderr] 1338 | match_len as u64 & BITMASKS[LEN_EXTRA[match_len] as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BITMASKS[LEN_EXTRA[match_len] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1339:17 [INFO] [stderr] | [INFO] [stderr] 1339 | LEN_EXTRA[match_len] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(LEN_EXTRA[match_len])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1351:25 [INFO] [stderr] | [INFO] [stderr] 1351 | bb.put_fast(huff.codes[1][sym] as u64, huff.code_sizes[1][sym] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(huff.codes[1][sym])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1351:52 [INFO] [stderr] | [INFO] [stderr] 1351 | bb.put_fast(huff.codes[1][sym] as u64, huff.code_sizes[1][sym] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[1][sym])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1353:17 [INFO] [stderr] | [INFO] [stderr] 1353 | match_dist as u64 & BITMASKS[num_extra_bits as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(match_dist)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1353:37 [INFO] [stderr] | [INFO] [stderr] 1353 | match_dist as u64 & BITMASKS[num_extra_bits as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(BITMASKS[num_extra_bits as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1365:21 [INFO] [stderr] | [INFO] [stderr] 1365 | huff.codes[0][lit as usize] as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(huff.codes[0][lit as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1366:21 [INFO] [stderr] | [INFO] [stderr] 1366 | huff.code_sizes[0][lit as usize] as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[0][lit as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1388:21 [INFO] [stderr] | [INFO] [stderr] 1388 | output.put_bits(huff.codes[0][256] as u32, huff.code_sizes[0][256] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.codes[0][256])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1388:48 [INFO] [stderr] | [INFO] [stderr] 1388 | output.put_bits(huff.codes[0][256] as u32, huff.code_sizes[0][256] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(huff.code_sizes[0][256])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/deflate/core.rs:1442:9 [INFO] [stderr] | [INFO] [stderr] 1442 | / let mut comp_success = false; [INFO] [stderr] 1443 | | if !use_raw_block { [INFO] [stderr] 1444 | | let use_static = (d.params.flags & TDEFL_FORCE_ALL_STATIC_BLOCKS != 0) || [INFO] [stderr] 1445 | | (d.lz.total_bytes < 48); [INFO] [stderr] 1446 | | comp_success = compress_block(&mut d.huff, &mut output, &d.lz, use_static)?; [INFO] [stderr] 1447 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let comp_success = if !use_raw_block { ..; compress_block(&mut d.huff, &mut output, &d.lz, use_static)? } else { false };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1459:64 [INFO] [stderr] | [INFO] [stderr] 1459 | (output.inner.position() - saved_buffer.pos + 1 >= d.lz.total_bytes as u64) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(d.lz.total_bytes)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1478:33 [INFO] [stderr] | [INFO] [stderr] 1478 | output.put_bits(d.dict.b.dict[pos as usize] as u32, 8); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(d.dict.b.dict[pos as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1585:29 [INFO] [stderr] | [INFO] [stderr] 1585 | let mut hash = ((dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize] as u32) << [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1587:17 [INFO] [stderr] | [INFO] [stderr] 1587 | (dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as usize] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1596:51 [INFO] [stderr] | [INFO] [stderr] 1596 | hash = ((hash << LZ_HASH_SHIFT) ^ (c as u32)) & [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(c)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1619:27 [INFO] [stderr] | [INFO] [stderr] 1619 | (((dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize] as u32) << [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(dictb.dict[(ins_pos & LZ_DICT_SIZE_MASK) as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1621:32 [INFO] [stderr] | [INFO] [stderr] 1621 | (((dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as [INFO] [stderr] | ________________________________^ [INFO] [stderr] 1622 | | usize] as u32) << [INFO] [stderr] | |______________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1621 | ((u32::from(dictb.dict[((ins_pos + 1) & LZ_DICT_SIZE_MASK) as [INFO] [stderr] 1622 | usize]) << [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1624:35 [INFO] [stderr] | [INFO] [stderr] 1624 | (c as u32))) & [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(c)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 28 [INFO] [stderr] --> src/deflate/core.rs:1758:1 [INFO] [stderr] | [INFO] [stderr] 1758 | / fn compress_fast(d: &mut CompressorOxide, callback: &mut CallbackOxide) -> bool { [INFO] [stderr] 1759 | | let mut src_pos = d.params.src_pos; [INFO] [stderr] 1760 | | let mut lookahead_size = d.dict.lookahead_size; [INFO] [stderr] 1761 | | let mut lookahead_pos = d.dict.lookahead_pos; [INFO] [stderr] ... | [INFO] [stderr] 1978 | | true [INFO] [stderr] 1979 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1810:33 [INFO] [stderr] | [INFO] [stderr] 1810 | let mut probe_pos = d.dict.b.hash[hash as usize] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(d.dict.b.hash[hash as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/deflate/core.rs:1814:16 [INFO] [stderr] | [INFO] [stderr] 1814 | if cur_match_dist as u32 <= d.dict.size { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(cur_match_dist)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: this loop never actually loops [INFO] [stderr] --> src/deflate/core.rs:1826:37 [INFO] [stderr] | [INFO] [stderr] 1826 | cur_match_len = 'find_match: loop { [INFO] [stderr] | _____________________________________^ [INFO] [stderr] 1827 | | for _ in 0..32 { [INFO] [stderr] 1828 | | // # Unsafe [INFO] [stderr] 1829 | | // This loop has a fixed counter, so p_data and q_data will never be [INFO] [stderr] ... | [INFO] [stderr] 1854 | | }; [INFO] [stderr] 1855 | | }; [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::never_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#never_loop [INFO] [stderr] [INFO] [stderr] warning: The function/method `read_u16_le` doesn't need a mutable reference [INFO] [stderr] --> src/deflate/core.rs:2181:32 [INFO] [stderr] | [INFO] [stderr] 2181 | assert_eq!(read_u16_le(&mut slice, 0), 2000); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] error: aborting due to 12 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `miniz_oxide`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "b1d34846bd7611bd869b09e68c6d4874e4d61947fa67bb39d33565c2e077ab4e"` [INFO] running `"docker" "rm" "-f" "b1d34846bd7611bd869b09e68c6d4874e4d61947fa67bb39d33565c2e077ab4e"` [INFO] [stdout] b1d34846bd7611bd869b09e68c6d4874e4d61947fa67bb39d33565c2e077ab4e