[INFO] fetching crate divans 0.0.1... [INFO] testing divans-0.0.1 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate divans 0.0.1 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate divans 0.0.1 [INFO] finished tweaking crates.io crate divans 0.0.1 [INFO] tweaked toml for crates.io crate divans 0.0.1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate divans 0.0.1 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 11 packages to latest compatible versions [INFO] [stderr] Adding alloc-no-stdlib v1.3.0 (available: v2.0.4) [INFO] [stderr] Adding brotli v2.5.1 (available: v8.0.1) [INFO] [stderr] Adding brotli-decompressor v1.3.1 (available: v1.5.0) [INFO] [stderr] Adding vergen v0.1.1 (available: v9.0.6) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded vergen v0.1.1 [INFO] [stderr] Downloaded alloc-no-stdlib v1.3.0 [INFO] [stderr] Downloaded brotli-decompressor v1.3.1 [INFO] [stderr] Downloaded brotli v2.5.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d066abc6d6b292476ee649afa138f4550321e257dc0e314fdd27cd7e2f1778af [INFO] running `Command { std: "docker" "start" "-a" "d066abc6d6b292476ee649afa138f4550321e257dc0e314fdd27cd7e2f1778af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d066abc6d6b292476ee649afa138f4550321e257dc0e314fdd27cd7e2f1778af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d066abc6d6b292476ee649afa138f4550321e257dc0e314fdd27cd7e2f1778af", kill_on_drop: false }` [INFO] [stdout] d066abc6d6b292476ee649afa138f4550321e257dc0e314fdd27cd7e2f1778af [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 076460d3b21b1e81d01af7fe8e43ae785a3f91b33b952d6cb35061e5b30000dd [INFO] running `Command { std: "docker" "start" "-a" "076460d3b21b1e81d01af7fe8e43ae785a3f91b33b952d6cb35061e5b30000dd", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling bitflags v0.7.0 [INFO] [stderr] Compiling alloc-no-stdlib v1.3.0 [INFO] [stderr] Compiling brotli-decompressor v1.3.1 [INFO] [stderr] Compiling brotli v2.5.1 [INFO] [stderr] Compiling time v0.1.45 [INFO] [stderr] Compiling vergen v0.1.1 [INFO] [stderr] Compiling divans v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: dropping unsupported crate type `cdylib` for target `x86_64-unknown-linux-musl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | #[cfg(feature="division_table_gen")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/arithmetic_coder.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | fn push_data(&mut self, &[u8]) -> usize; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/arithmetic_coder.rs:27:28 [INFO] [stdout] | [INFO] [stdout] 27 | fn pop_data(&mut self, &mut [u8]) -> usize; [INFO] [stdout] | ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut [u8]` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `Allocator`, and `StackAllocator` [INFO] [stdout] --> src/cmd_to_raw/mod.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FeatureFlagSliceType` and `LiteralCommand` [INFO] [stdout] --> src/cmd_to_raw/mod.rs:22:49 [INFO] [stdout] | [INFO] [stdout] 22 | pub use super::interface::{Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, `SliceWrapper`, and `StackAllocator` [INFO] [stdout] --> src/raw_to_cmd/hash_match.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::slice_util::SliceReference` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use super::slice_util::SliceReference; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CopyCommand` and `DictCommand` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:22:91 [INFO] [stdout] | [INFO] [stdout] 22 | pub use super::interface::{PredictionModeContextMap, Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `features` [INFO] [stdout] --> src/codec/weights.rs:84:7 [INFO] [stdout] | [INFO] [stdout] 84 | #[cfg(features="floating_point_context_mixing")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] help: there is a config with a similar name and different values [INFO] [stdout] | [INFO] [stdout] 84 - #[cfg(features="floating_point_context_mixing")] [INFO] [stdout] 84 + #[cfg(feature = "avoid-divide")] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `features` [INFO] [stdout] --> src/codec/weights.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] help: there is a config with a similar name and different values [INFO] [stdout] | [INFO] [stdout] 108 - #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stdout] 108 + #[cfg(not(feature = "avoid-divide"))] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CrossCommandBookKeeping` [INFO] [stdout] --> src/codec/specializations.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | pub use super::interface::{CrossCommandBookKeeping,LiteralBookKeeping}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:87:68 [INFO] [stdout] | [INFO] [stdout] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:87:89 [INFO] [stdout] | [INFO] [stdout] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a CopyCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:88:79 [INFO] [stdout] | [INFO] [stdout] 88 | fn get_source_literal_command<'a, ISlice:SliceWrapper+Default>(&self, &'a Command, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:89:72 [INFO] [stdout] | [INFO] [stdout] 89 | ... &'a LiteralCommand) -> &'a LiteralCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a LiteralCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:90:68 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:90:89 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a DictCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CrossCommandBookKeeping` [INFO] [stdout] --> src/codec/mod.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | CrossCommandBookKeeping, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/ans.rs:139:24 [INFO] [stdout] | [INFO] [stdout] 139 | const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stdout] 139 + const SCALE_MASK:u64 = (1u64 << LOG2_SCALE) - 1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, and `StackAllocator` [INFO] [stdout] --> src/brotli_ir_gen.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `FeatureFlagSliceType`, `LiteralBlockSwitch`, `LiteralCommand`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stdout] --> src/brotli_ir_gen.rs:22:28 [INFO] [stdout] | [INFO] [stdout] 22 | ...::{BlockSwitch, LiteralBlockSwitch, Command, Compressor, CopyCommand, Decompressor, DictCommand, LiteralCommand, Nop, NewWithAllocator, ArithmeticEncoderOrDecoder, LiteralPredictionModeNibble, PredictionModeContextMap, free_cmd, FeatureFlagSliceType, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncoderOrDecoderSpecialization` and `StrideSelection` [INFO] [stdout] --> src/brotli_ir_gen.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/divans_compressor.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `LiteralBlockSwitch`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stdout] --> src/divans_compressor.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | BlockSwitch, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | LiteralBlockSwitch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | CopyCommand, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 37 | Decompressor, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 38 | DictCommand, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 39 | LiteralCommand, [INFO] [stdout] 40 | Nop, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | LiteralPredictionModeNibble, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | free_cmd, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncoderOrDecoderSpecialization`, `StrideSelection`, and `default_crc` [INFO] [stdout] --> src/divans_compressor.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection, default_crc, CommandArray, CommandSliceArray}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub extern fn divans_new_compressor() -> *mut compressor::DivansCompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub unsafe extern fn divans_new_compressor_with_custom_alloc(allocators:CAllocator) -> *mut DivansCompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub unsafe extern fn divans_set_option(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub unsafe extern fn divans_encode(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe extern fn divans_encode_flush(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub unsafe extern fn divans_compressor_malloc_u8(state_ptr: *mut DivansCompressorState, size: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 120 | pub unsafe extern fn divans_compressor_free_u8(state_ptr: *mut DivansCompressorState, data: *mut u8, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 130 | pub unsafe extern fn divans_compressor_malloc_usize(state_ptr: *mut DivansCompressorState, size: usize) -> *mut usize { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 139 | pub unsafe extern fn divans_compressor_free_usize(state_ptr: *mut DivansCompressorState, data: *mut usize, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:159:12 [INFO] [stdout] | [INFO] [stdout] 159 | pub unsafe extern fn divans_free_compressor(state_ptr: *mut DivansCompressorState) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub extern fn divans_new_decompressor() -> *mut DivansDecompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | pub extern fn divans_new_serial_decompressor() -> *mut DivansDecompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:213:12 [INFO] [stdout] | [INFO] [stdout] 213 | pub unsafe extern fn divans_new_decompressor_with_custom_alloc(allocators:CAllocator, skip_crc:u8, multithread: u8) -> *mut DivansDecompr... [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:236:12 [INFO] [stdout] | [INFO] [stdout] 236 | pub unsafe extern fn divans_decode(state_ptr: *mut DivansDecompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | pub unsafe extern fn divans_decompressor_malloc_u8(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 285 | pub unsafe extern fn divans_decompressor_free_u8(state_ptr: *mut DivansDecompressorState, data: *mut u8, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub unsafe extern fn divans_decompressor_malloc_usize(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut usize { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:303:12 [INFO] [stdout] | [INFO] [stdout] 303 | pub unsafe extern fn divans_decompressor_free_usize(state_ptr: *mut DivansDecompressorState, data: *mut usize, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub unsafe extern fn divans_free_decompressor(state_ptr: *mut DivansDecompressorState) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/reader.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/writer.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:256:5 [INFO] [stdout] | [INFO] [stdout] 256 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:258:5 [INFO] [stdout] | [INFO] [stdout] 258 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 262 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 266 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:274:5 [INFO] [stdout] | [INFO] [stdout] 274 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:280:5 [INFO] [stdout] | [INFO] [stdout] 280 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:282:5 [INFO] [stdout] | [INFO] [stdout] 282 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:284:5 [INFO] [stdout] | [INFO] [stdout] 284 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:286:5 [INFO] [stdout] | [INFO] [stdout] 286 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:288:5 [INFO] [stdout] | [INFO] [stdout] 288 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:368:5 [INFO] [stdout] | [INFO] [stdout] 368 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 386 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:390:5 [INFO] [stdout] | [INFO] [stdout] 390 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:393:5 [INFO] [stdout] | [INFO] [stdout] 393 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:405:5 [INFO] [stdout] | [INFO] [stdout] 405 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/mod.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 4 | use core; [INFO] [stdout] | --------- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/interface.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 8 | pub type DivansReturnCode = u8; [INFO] [stdout] | ------------------------------- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/interface.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 42 | #[derive(Clone)] [INFO] [stdout] 43 | / pub struct CAllocator { [INFO] [stdout] 44 | | pub alloc_func: Option *mut c_void>, [INFO] [stdout] 45 | | pub free_func: Option ()>, [INFO] [stdout] 46 | | pub opaque: *mut c_void, [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/compressor.rs:267:1 [INFO] [stdout] | [INFO] [stdout] 267 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 268 | / pub struct DivansCompressorState { [INFO] [stdout] 269 | | pub custom_allocator: CAllocator, [INFO] [stdout] 270 | | pub compressor: CompressorState [INFO] [stdout] 271 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/decompressor.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 10 | / pub struct DivansDecompressorState { [INFO] [stdout] 11 | | pub custom_allocator: CAllocator, [INFO] [stdout] 12 | | pub decompressor: ::DivansDecompressor<, SubclassableAl... [INFO] [stdout] 13 | | SubclassableAllocator, [INFO] [stdout] 14 | | SubclassableAllocator<::DefaultCDF16>, [INFO] [stdout] 15 | | SubclassableAllocator>, [INFO] [stdout] 16 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reader.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 24 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:91:25 [INFO] [stdout] | [INFO] [stdout] 91 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:112:25 [INFO] [stdout] | [INFO] [stdout] 112 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:129:25 [INFO] [stdout] | [INFO] [stdout] 129 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:145:25 [INFO] [stdout] | [INFO] [stdout] 145 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:175:29 [INFO] [stdout] | [INFO] [stdout] 175 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:204:25 [INFO] [stdout] | [INFO] [stdout] 204 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:231:25 [INFO] [stdout] | [INFO] [stdout] 231 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:250:33 [INFO] [stdout] | [INFO] [stdout] 250 | ... let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:84:25 [INFO] [stdout] | [INFO] [stdout] 84 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeBegNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:100:25 [INFO] [stdout] | [INFO] [stdout] 100 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeLastNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:119:25 [INFO] [stdout] | [INFO] [stdout] 119 | let mut nibble_prob = superstate.bk.dict_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:139:25 [INFO] [stdout] | [INFO] [stdout] 139 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:150:25 [INFO] [stdout] | [INFO] [stdout] 150 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:294:16 [INFO] [stdout] | [INFO] [stdout] 294 | let mut byte_to_encode_val = specialization.get_literal_byte(in_cmd, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:572:25 [INFO] [stdout] | [INFO] [stdout] 572 | let mut nibble_prob = superstate.bk.lit_len_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:600:25 [INFO] [stdout] | [INFO] [stdout] 600 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeBegNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:625:25 [INFO] [stdout] | [INFO] [stdout] 625 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeLastNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:640:25 [INFO] [stdout] | [INFO] [stdout] 640 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeMantissaNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:707:30 [INFO] [stdout] | [INFO] [stdout] 707 | Some(mut lc) => { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Only, (0,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:195:28 [INFO] [stdout] | [INFO] [stdout] 195 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:211:28 [INFO] [stdout] | [INFO] [stdout] 211 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:235:24 [INFO] [stdout] | [INFO] [stdout] 235 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::ContextMapSpeedPalette, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:291:28 [INFO] [stdout] | [INFO] [stdout] 291 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Mnemonic, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:320:28 [INFO] [stdout] | [INFO] [stdout] 320 | let mut out_context_map = match context_map_type { [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:343:24 [INFO] [stdout] | [INFO] [stdout] 343 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::FirstNibble, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:363:28 [INFO] [stdout] | [INFO] [stdout] 363 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::SecondNibble, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:371:24 [INFO] [stdout] | [INFO] [stdout] 371 | let mut out_context_map = match context_map_type { [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:395:24 [INFO] [stdout] | [INFO] [stdout] 395 | let mut prior = if index >= 256 && self.pm.has_context_speeds() { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:401:28 [INFO] [stdout] | [INFO] [stdout] 401 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:72:25 [INFO] [stdout] | [INFO] [stdout] 72 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::Mnemonic, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:88:25 [INFO] [stdout] | [INFO] [stdout] 88 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::FirstNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:97:25 [INFO] [stdout] | [INFO] [stdout] 97 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::SecondNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:181:25 [INFO] [stdout] | [INFO] [stdout] 181 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::StrideNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ir_optimize/mod.rs:198:21 [INFO] [stdout] | [INFO] [stdout] 198 | let mut should_merge = match should_merge(lit, copy, index, mb, &mut actuary, &mut distance_cache) { [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mux.rs:463:20 [INFO] [stdout] | [INFO] [stdout] 463 | let mut is_lagging = max_flush > MAX_FLUSH_VARIANCE + self.last_flush[index]; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `put_8bit` is never used [INFO] [stdout] --> src/arithmetic_coder.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait EntropyEncoder { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 122 | fn put_8bit(&mut self, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> src/multithreading.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | struct ThreadEvent(ThreadEventType, u32, Duration); [INFO] [stdout] | ----------- ^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `ThreadEvent` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/interface.rs:259:21 [INFO] [stdout] | [INFO] [stdout] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS]; [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS]; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/interface.rs:275:20 [INFO] [stdout] | [INFO] [stdout] 275 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS]; [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 275 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS]; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:920:26 [INFO] [stdout] | [INFO] [stdout] 920 | fn get_input_command(&self, offset: usize) -> Command; [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 920 | fn get_input_command(&self, offset: usize) -> Command>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:928:26 [INFO] [stdout] | [INFO] [stdout] 928 | fn get_input_command(&self, _offset: usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 928 | fn get_input_command(&self, _offset: usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:940:26 [INFO] [stdout] | [INFO] [stdout] 940 | fn get_input_command(&self, offset: usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 940 | fn get_input_command(&self, offset: usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/io.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 48 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 48 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/brotli_ir_gen.rs:131:16 [INFO] [stdout] | [INFO] [stdout] 131 | panic!(m) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 131 | panic!("{}", m) [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 131 - panic!(m) [INFO] [stdout] 131 + std::panic::panic_any(m) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/brotli_ir_gen.rs:636:26 [INFO] [stdout] | [INFO] [stdout] 636 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 636 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/divans_compressor.rs:179:26 [INFO] [stdout] | [INFO] [stdout] 179 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stdout] | ^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 179 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/divans_decompressor.rs:282:9 [INFO] [stdout] | [INFO] [stdout] 282 | / core::mem::replace(self, [INFO] [stdout] 283 | | DivansDecompressor::Decode( [INFO] [stdout] 284 | | DivansProcess:: { [INFO] [stdout] 285 | | codec:Some(codec), [INFO] [stdout] ... | [INFO] [stdout] 288 | | mcommand:mcommand, [INFO] [stdout] 289 | | })); [INFO] [stdout] | |__________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 282 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ir_optimize/mod.rs:205:21 [INFO] [stdout] | [INFO] [stdout] 205 | core::mem::replace(copy, CopyCommand::nop()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = core::mem::replace(copy, CopyCommand::nop()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ir_optimize/mod.rs:219:21 [INFO] [stdout] | [INFO] [stdout] 219 | core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 219 | let _ = core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/statistics_tracking_codec.rs:174:26 [INFO] [stdout] | [INFO] [stdout] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/statistics_tracking_codec.rs:185:26 [INFO] [stdout] | [INFO] [stdout] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/cache.rs:62:30 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference{ [INFO] [stdout] | ^^^^^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference<'_>{ [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/cache.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut{ [INFO] [stdout] | ^^^^^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut<'_>{ [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:122:20 [INFO] [stdout] | [INFO] [stdout] 122 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 122 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:169:21 [INFO] [stdout] | [INFO] [stdout] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:583:20 [INFO] [stdout] | [INFO] [stdout] 583 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 583 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:620:21 [INFO] [stdout] | [INFO] [stdout] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/threading.rs:327:20 [INFO] [stdout] | [INFO] [stdout] 327 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 327 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/ffi/alloc_util.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 213 | Box::from_raw(slice_ref); // free on drop [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 213 | let _ = Box::from_raw(slice_ref); // free on drop [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ffi/compressor.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | / core::mem::replace(self, [INFO] [stdout] 177 | | CompressorState::InternalCompressor( [INFO] [stdout] 178 | | InternalCompressorFactory::new( [INFO] [stdout] 179 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] ... | [INFO] [stdout] 182 | | opts, [INFO] [stdout] 183 | | ()))); [INFO] [stdout] | |________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 176 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ffi/compressor.rs:186:17 [INFO] [stdout] | [INFO] [stdout] 186 | / core::mem::replace(self, [INFO] [stdout] 187 | | CompressorState::BrotliCompressor( [INFO] [stdout] 188 | | BrotliFactory::new( [INFO] [stdout] 189 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] ... | [INFO] [stdout] 209 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] 210 | | )))); [INFO] [stdout] | |_______________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 186 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `no-stdlib-rlib` [INFO] [stdout] --> src/bin/divans.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | #[cfg(feature="no-stdlib-rlib")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `no-stdlib-rlib` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `no-stdlib-rlib` [INFO] [stdout] --> src/bin/divans.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | #[cfg(not(feature="no-stdlib-rlib"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `no-stdlib-rlib` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `inplace-new` [INFO] [stdout] --> src/bin/util.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | #[cfg(feature="inplace-new")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `inplace-new` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `inplace-new` [INFO] [stdout] --> src/bin/util.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | #[cfg(not(feature="inplace-new"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `inplace-new` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:455:20 [INFO] [stdout] | [INFO] [stdout] 455 | let data = try!(util::literal_slice_to_vec(&s.as_bytes()[command_vec[0].len() + command_vec[1].len() + 2..])); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:457:24 [INFO] [stdout] | [INFO] [stdout] 457 | let prob = try!(util::hex_slice_to_vec(command_vec[3].as_bytes())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:659:21 [INFO] [stdout] | [INFO] [stdout] 659 | try!(recode_cmd_buffer(&mut state, ibuffer.split_at(i_read_index).0, w, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:671:23 [INFO] [stdout] | [INFO] [stdout] 671 | match try!(command_parse(&line)) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:956:31 [INFO] [stdout] | [INFO] [stdout] 956 | window_size = try!(window_parse(&line)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/bin/divans.rs:1013:46 [INFO] [stdout] | [INFO] [stdout] 1013 | let mut obuffer = vec![0u8; buffer_size];; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bin/divans.rs:718:63 [INFO] [stdout] | [INFO] [stdout] 718 | ... free_state: &mut Fn(Compressor)->ItemVecAllocator) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 718 | free_state: &mut dyn Fn(Compressor)->ItemVecAllocator) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bin/divans.rs:103:32 [INFO] [stdout] | [INFO] [stdout] 103 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 103 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:169:43 [INFO] [stdout] | [INFO] [stdout] 169 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:329:47 [INFO] [stdout] | [INFO] [stdout] 329 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:350:60 [INFO] [stdout] | [INFO] [stdout] 350 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:366:47 [INFO] [stdout] | [INFO] [stdout] 366 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:377:47 [INFO] [stdout] | [INFO] [stdout] 377 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:393:47 [INFO] [stdout] | [INFO] [stdout] 393 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:409:47 [INFO] [stdout] | [INFO] [stdout] 409 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:416:47 [INFO] [stdout] | [INFO] [stdout] 416 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:425:55 [INFO] [stdout] | [INFO] [stdout] 425 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:449:51 [INFO] [stdout] | [INFO] [stdout] 449 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.78s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "076460d3b21b1e81d01af7fe8e43ae785a3f91b33b952d6cb35061e5b30000dd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "076460d3b21b1e81d01af7fe8e43ae785a3f91b33b952d6cb35061e5b30000dd", kill_on_drop: false }` [INFO] [stdout] 076460d3b21b1e81d01af7fe8e43ae785a3f91b33b952d6cb35061e5b30000dd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 21675d8a2d5f081b06c5b046312390a45fbf1c39ed30249de0a3897d295791e3 [INFO] running `Command { std: "docker" "start" "-a" "21675d8a2d5f081b06c5b046312390a45fbf1c39ed30249de0a3897d295791e3", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stdout] warning: dropping unsupported crate type `cdylib` for target `x86_64-unknown-linux-musl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | #[cfg(feature="division_table_gen")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/arithmetic_coder.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | fn push_data(&mut self, &[u8]) -> usize; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/arithmetic_coder.rs:27:28 [INFO] [stdout] | [INFO] [stdout] 27 | fn pop_data(&mut self, &mut [u8]) -> usize; [INFO] [stdout] | ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut [u8]` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `Allocator`, and `StackAllocator` [INFO] [stdout] --> src/cmd_to_raw/mod.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FeatureFlagSliceType` and `LiteralCommand` [INFO] [stdout] --> src/cmd_to_raw/mod.rs:22:49 [INFO] [stdout] | [INFO] [stdout] 22 | pub use super::interface::{Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, `SliceWrapper`, and `StackAllocator` [INFO] [stdout] --> src/raw_to_cmd/hash_match.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::slice_util::SliceReference` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use super::slice_util::SliceReference; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CopyCommand` and `DictCommand` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:22:91 [INFO] [stdout] | [INFO] [stdout] 22 | pub use super::interface::{PredictionModeContextMap, Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `features` [INFO] [stdout] --> src/codec/weights.rs:84:7 [INFO] [stdout] | [INFO] [stdout] 84 | #[cfg(features="floating_point_context_mixing")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] help: there is a config with a similar name and different values [INFO] [stdout] | [INFO] [stdout] 84 - #[cfg(features="floating_point_context_mixing")] [INFO] [stdout] 84 + #[cfg(feature = "avoid-divide")] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `features` [INFO] [stdout] --> src/codec/weights.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] help: there is a config with a similar name and different values [INFO] [stdout] | [INFO] [stdout] 108 - #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stdout] 108 + #[cfg(not(feature = "avoid-divide"))] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CrossCommandBookKeeping` [INFO] [stdout] --> src/codec/specializations.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | pub use super::interface::{CrossCommandBookKeeping,LiteralBookKeeping}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:87:68 [INFO] [stdout] | [INFO] [stdout] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:87:89 [INFO] [stdout] | [INFO] [stdout] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a CopyCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:88:79 [INFO] [stdout] | [INFO] [stdout] 88 | fn get_source_literal_command<'a, ISlice:SliceWrapper+Default>(&self, &'a Command, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:89:72 [INFO] [stdout] | [INFO] [stdout] 89 | ... &'a LiteralCommand) -> &'a LiteralCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a LiteralCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:90:68 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:90:89 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a DictCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CrossCommandBookKeeping` [INFO] [stdout] --> src/codec/mod.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | CrossCommandBookKeeping, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/ans.rs:139:24 [INFO] [stdout] | [INFO] [stdout] 139 | const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stdout] 139 + const SCALE_MASK:u64 = (1u64 << LOG2_SCALE) - 1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, and `StackAllocator` [INFO] [stdout] --> src/brotli_ir_gen.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `FeatureFlagSliceType`, `LiteralBlockSwitch`, `LiteralCommand`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stdout] --> src/brotli_ir_gen.rs:22:28 [INFO] [stdout] | [INFO] [stdout] 22 | ...::{BlockSwitch, LiteralBlockSwitch, Command, Compressor, CopyCommand, Decompressor, DictCommand, LiteralCommand, Nop, NewWithAllocator, ArithmeticEncoderOrDecoder, LiteralPredictionModeNibble, PredictionModeContextMap, free_cmd, FeatureFlagSliceType, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncoderOrDecoderSpecialization` and `StrideSelection` [INFO] [stdout] --> src/brotli_ir_gen.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/divans_compressor.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `LiteralBlockSwitch`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stdout] --> src/divans_compressor.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | BlockSwitch, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | LiteralBlockSwitch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | CopyCommand, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 37 | Decompressor, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 38 | DictCommand, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 39 | LiteralCommand, [INFO] [stdout] 40 | Nop, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | LiteralPredictionModeNibble, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | free_cmd, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncoderOrDecoderSpecialization`, `StrideSelection`, and `default_crc` [INFO] [stdout] --> src/divans_compressor.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection, default_crc, CommandArray, CommandSliceArray}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub extern fn divans_new_compressor() -> *mut compressor::DivansCompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub unsafe extern fn divans_new_compressor_with_custom_alloc(allocators:CAllocator) -> *mut DivansCompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub unsafe extern fn divans_set_option(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub unsafe extern fn divans_encode(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe extern fn divans_encode_flush(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub unsafe extern fn divans_compressor_malloc_u8(state_ptr: *mut DivansCompressorState, size: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 120 | pub unsafe extern fn divans_compressor_free_u8(state_ptr: *mut DivansCompressorState, data: *mut u8, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 130 | pub unsafe extern fn divans_compressor_malloc_usize(state_ptr: *mut DivansCompressorState, size: usize) -> *mut usize { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 139 | pub unsafe extern fn divans_compressor_free_usize(state_ptr: *mut DivansCompressorState, data: *mut usize, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:159:12 [INFO] [stdout] | [INFO] [stdout] 159 | pub unsafe extern fn divans_free_compressor(state_ptr: *mut DivansCompressorState) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub extern fn divans_new_decompressor() -> *mut DivansDecompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | pub extern fn divans_new_serial_decompressor() -> *mut DivansDecompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:213:12 [INFO] [stdout] | [INFO] [stdout] 213 | pub unsafe extern fn divans_new_decompressor_with_custom_alloc(allocators:CAllocator, skip_crc:u8, multithread: u8) -> *mut DivansDecompr... [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:236:12 [INFO] [stdout] | [INFO] [stdout] 236 | pub unsafe extern fn divans_decode(state_ptr: *mut DivansDecompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | pub unsafe extern fn divans_decompressor_malloc_u8(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 285 | pub unsafe extern fn divans_decompressor_free_u8(state_ptr: *mut DivansDecompressorState, data: *mut u8, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub unsafe extern fn divans_decompressor_malloc_usize(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut usize { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:303:12 [INFO] [stdout] | [INFO] [stdout] 303 | pub unsafe extern fn divans_decompressor_free_usize(state_ptr: *mut DivansDecompressorState, data: *mut usize, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub unsafe extern fn divans_free_decompressor(state_ptr: *mut DivansDecompressorState) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/reader.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/writer.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:256:5 [INFO] [stdout] | [INFO] [stdout] 256 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:258:5 [INFO] [stdout] | [INFO] [stdout] 258 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 262 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 266 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:274:5 [INFO] [stdout] | [INFO] [stdout] 274 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:280:5 [INFO] [stdout] | [INFO] [stdout] 280 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:282:5 [INFO] [stdout] | [INFO] [stdout] 282 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:284:5 [INFO] [stdout] | [INFO] [stdout] 284 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:286:5 [INFO] [stdout] | [INFO] [stdout] 286 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:288:5 [INFO] [stdout] | [INFO] [stdout] 288 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:368:5 [INFO] [stdout] | [INFO] [stdout] 368 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 386 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:390:5 [INFO] [stdout] | [INFO] [stdout] 390 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:393:5 [INFO] [stdout] | [INFO] [stdout] 393 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:405:5 [INFO] [stdout] | [INFO] [stdout] 405 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/mod.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 4 | use core; [INFO] [stdout] | --------- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/interface.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 8 | pub type DivansReturnCode = u8; [INFO] [stdout] | ------------------------------- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/interface.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 42 | #[derive(Clone)] [INFO] [stdout] 43 | / pub struct CAllocator { [INFO] [stdout] 44 | | pub alloc_func: Option *mut c_void>, [INFO] [stdout] 45 | | pub free_func: Option ()>, [INFO] [stdout] 46 | | pub opaque: *mut c_void, [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/compressor.rs:267:1 [INFO] [stdout] | [INFO] [stdout] 267 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 268 | / pub struct DivansCompressorState { [INFO] [stdout] 269 | | pub custom_allocator: CAllocator, [INFO] [stdout] 270 | | pub compressor: CompressorState [INFO] [stdout] 271 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/decompressor.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 10 | / pub struct DivansDecompressorState { [INFO] [stdout] 11 | | pub custom_allocator: CAllocator, [INFO] [stdout] 12 | | pub decompressor: ::DivansDecompressor<, SubclassableAl... [INFO] [stdout] 13 | | SubclassableAllocator, [INFO] [stdout] 14 | | SubclassableAllocator<::DefaultCDF16>, [INFO] [stdout] 15 | | SubclassableAllocator>, [INFO] [stdout] 16 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reader.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 24 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:91:25 [INFO] [stdout] | [INFO] [stdout] 91 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:112:25 [INFO] [stdout] | [INFO] [stdout] 112 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:129:25 [INFO] [stdout] | [INFO] [stdout] 129 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:145:25 [INFO] [stdout] | [INFO] [stdout] 145 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:175:29 [INFO] [stdout] | [INFO] [stdout] 175 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:204:25 [INFO] [stdout] | [INFO] [stdout] 204 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:231:25 [INFO] [stdout] | [INFO] [stdout] 231 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:250:33 [INFO] [stdout] | [INFO] [stdout] 250 | ... let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:84:25 [INFO] [stdout] | [INFO] [stdout] 84 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeBegNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:100:25 [INFO] [stdout] | [INFO] [stdout] 100 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeLastNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:119:25 [INFO] [stdout] | [INFO] [stdout] 119 | let mut nibble_prob = superstate.bk.dict_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:139:25 [INFO] [stdout] | [INFO] [stdout] 139 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling divans v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:150:25 [INFO] [stdout] | [INFO] [stdout] 150 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:294:16 [INFO] [stdout] | [INFO] [stdout] 294 | let mut byte_to_encode_val = specialization.get_literal_byte(in_cmd, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:572:25 [INFO] [stdout] | [INFO] [stdout] 572 | let mut nibble_prob = superstate.bk.lit_len_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:600:25 [INFO] [stdout] | [INFO] [stdout] 600 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeBegNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:625:25 [INFO] [stdout] | [INFO] [stdout] 625 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeLastNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:640:25 [INFO] [stdout] | [INFO] [stdout] 640 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeMantissaNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:707:30 [INFO] [stdout] | [INFO] [stdout] 707 | Some(mut lc) => { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Only, (0,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:195:28 [INFO] [stdout] | [INFO] [stdout] 195 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:211:28 [INFO] [stdout] | [INFO] [stdout] 211 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:235:24 [INFO] [stdout] | [INFO] [stdout] 235 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::ContextMapSpeedPalette, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:291:28 [INFO] [stdout] | [INFO] [stdout] 291 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Mnemonic, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:320:28 [INFO] [stdout] | [INFO] [stdout] 320 | let mut out_context_map = match context_map_type { [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:343:24 [INFO] [stdout] | [INFO] [stdout] 343 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::FirstNibble, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:363:28 [INFO] [stdout] | [INFO] [stdout] 363 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::SecondNibble, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:371:24 [INFO] [stdout] | [INFO] [stdout] 371 | let mut out_context_map = match context_map_type { [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:395:24 [INFO] [stdout] | [INFO] [stdout] 395 | let mut prior = if index >= 256 && self.pm.has_context_speeds() { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:401:28 [INFO] [stdout] | [INFO] [stdout] 401 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:72:25 [INFO] [stdout] | [INFO] [stdout] 72 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::Mnemonic, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:88:25 [INFO] [stdout] | [INFO] [stdout] 88 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::FirstNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:97:25 [INFO] [stdout] | [INFO] [stdout] 97 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::SecondNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:181:25 [INFO] [stdout] | [INFO] [stdout] 181 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::StrideNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ir_optimize/mod.rs:198:21 [INFO] [stdout] | [INFO] [stdout] 198 | let mut should_merge = match should_merge(lit, copy, index, mb, &mut actuary, &mut distance_cache) { [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mux.rs:463:20 [INFO] [stdout] | [INFO] [stdout] 463 | let mut is_lagging = max_flush > MAX_FLUSH_VARIANCE + self.last_flush[index]; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `put_8bit` is never used [INFO] [stdout] --> src/arithmetic_coder.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait EntropyEncoder { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 122 | fn put_8bit(&mut self, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> src/multithreading.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | struct ThreadEvent(ThreadEventType, u32, Duration); [INFO] [stdout] | ----------- ^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `ThreadEvent` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/interface.rs:259:21 [INFO] [stdout] | [INFO] [stdout] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS]; [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS]; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/interface.rs:275:20 [INFO] [stdout] | [INFO] [stdout] 275 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS]; [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 275 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS]; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:920:26 [INFO] [stdout] | [INFO] [stdout] 920 | fn get_input_command(&self, offset: usize) -> Command; [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 920 | fn get_input_command(&self, offset: usize) -> Command>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:928:26 [INFO] [stdout] | [INFO] [stdout] 928 | fn get_input_command(&self, _offset: usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 928 | fn get_input_command(&self, _offset: usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:940:26 [INFO] [stdout] | [INFO] [stdout] 940 | fn get_input_command(&self, offset: usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 940 | fn get_input_command(&self, offset: usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/io.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 48 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 48 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/brotli_ir_gen.rs:131:16 [INFO] [stdout] | [INFO] [stdout] 131 | panic!(m) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 131 | panic!("{}", m) [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 131 - panic!(m) [INFO] [stdout] 131 + std::panic::panic_any(m) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/brotli_ir_gen.rs:636:26 [INFO] [stdout] | [INFO] [stdout] 636 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 636 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/divans_compressor.rs:179:26 [INFO] [stdout] | [INFO] [stdout] 179 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stdout] | ^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 179 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/divans_decompressor.rs:282:9 [INFO] [stdout] | [INFO] [stdout] 282 | / core::mem::replace(self, [INFO] [stdout] 283 | | DivansDecompressor::Decode( [INFO] [stdout] 284 | | DivansProcess:: { [INFO] [stdout] 285 | | codec:Some(codec), [INFO] [stdout] ... | [INFO] [stdout] 288 | | mcommand:mcommand, [INFO] [stdout] 289 | | })); [INFO] [stdout] | |__________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 282 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ir_optimize/mod.rs:205:21 [INFO] [stdout] | [INFO] [stdout] 205 | core::mem::replace(copy, CopyCommand::nop()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = core::mem::replace(copy, CopyCommand::nop()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ir_optimize/mod.rs:219:21 [INFO] [stdout] | [INFO] [stdout] 219 | core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 219 | let _ = core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/statistics_tracking_codec.rs:174:26 [INFO] [stdout] | [INFO] [stdout] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/statistics_tracking_codec.rs:185:26 [INFO] [stdout] | [INFO] [stdout] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/cache.rs:62:30 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference{ [INFO] [stdout] | ^^^^^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference<'_>{ [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/cache.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut{ [INFO] [stdout] | ^^^^^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut<'_>{ [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:122:20 [INFO] [stdout] | [INFO] [stdout] 122 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 122 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:169:21 [INFO] [stdout] | [INFO] [stdout] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:583:20 [INFO] [stdout] | [INFO] [stdout] 583 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 583 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:620:21 [INFO] [stdout] | [INFO] [stdout] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/threading.rs:327:20 [INFO] [stdout] | [INFO] [stdout] 327 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 327 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/ffi/alloc_util.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 213 | Box::from_raw(slice_ref); // free on drop [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 213 | let _ = Box::from_raw(slice_ref); // free on drop [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ffi/compressor.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | / core::mem::replace(self, [INFO] [stdout] 177 | | CompressorState::InternalCompressor( [INFO] [stdout] 178 | | InternalCompressorFactory::new( [INFO] [stdout] 179 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] ... | [INFO] [stdout] 182 | | opts, [INFO] [stdout] 183 | | ()))); [INFO] [stdout] | |________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 176 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ffi/compressor.rs:186:17 [INFO] [stdout] | [INFO] [stdout] 186 | / core::mem::replace(self, [INFO] [stdout] 187 | | CompressorState::BrotliCompressor( [INFO] [stdout] 188 | | BrotliFactory::new( [INFO] [stdout] 189 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] ... | [INFO] [stdout] 209 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] 210 | | )))); [INFO] [stdout] | |_______________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 186 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> examples/compress.rs:42:28 [INFO] [stdout] | [INFO] [stdout] 42 | panic!(e); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 42 | panic!("{}", e); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 42 - panic!(e); [INFO] [stdout] 42 + std::panic::panic_any(e); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> examples/compress.rs:51:40 [INFO] [stdout] | [INFO] [stdout] 51 | ... panic!(e) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 51 | panic!("{}", e) [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 51 - panic!(e) [INFO] [stdout] 51 + std::panic::panic_any(e) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> examples/compress.rs:57:42 [INFO] [stdout] | [INFO] [stdout] 57 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 57 | Err(e) => panic!("{}", e), [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 57 - Err(e) => panic!(e), [INFO] [stdout] 57 + Err(e) => std::panic::panic_any(e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/util_prior_stream_cost.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | let mut prior_val: Vec = if let Some(_) = line.find(",") { [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/util_prior_stream_cost.rs:65:21 [INFO] [stdout] | [INFO] [stdout] 65 | let mut prior_stream = &mut sub_streams.entry(prior).or_insert(vec::Vec::::new()); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> examples/decompress.rs:25:28 [INFO] [stdout] | [INFO] [stdout] 25 | panic!(e); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 25 | panic!("{}", e); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 25 - panic!(e); [INFO] [stdout] 25 + std::panic::panic_any(e); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> examples/decompress.rs:32:42 [INFO] [stdout] | [INFO] [stdout] 32 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 32 | Err(e) => panic!("{}", e), [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 32 - Err(e) => panic!(e), [INFO] [stdout] 32 + Err(e) => std::panic::panic_any(e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `no-stdlib-rlib` [INFO] [stdout] --> src/bin/divans.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | #[cfg(feature="no-stdlib-rlib")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `no-stdlib-rlib` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `no-stdlib-rlib` [INFO] [stdout] --> src/bin/divans.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | #[cfg(not(feature="no-stdlib-rlib"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `no-stdlib-rlib` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/integration_test.rs:71:3 [INFO] [stdout] | [INFO] [stdout] 71 | try!(super::recode(&mut brotli_file, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `inplace-new` [INFO] [stdout] --> src/bin/util.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | #[cfg(feature="inplace-new")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `inplace-new` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `inplace-new` [INFO] [stdout] --> src/bin/util.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | #[cfg(not(feature="inplace-new"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `inplace-new` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:455:20 [INFO] [stdout] | [INFO] [stdout] 455 | let data = try!(util::literal_slice_to_vec(&s.as_bytes()[command_vec[0].len() + command_vec[1].len() + 2..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:457:24 [INFO] [stdout] | [INFO] [stdout] 457 | let prob = try!(util::hex_slice_to_vec(command_vec[3].as_bytes())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:659:21 [INFO] [stdout] | [INFO] [stdout] 659 | try!(recode_cmd_buffer(&mut state, ibuffer.split_at(i_read_index).0, w, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:671:23 [INFO] [stdout] | [INFO] [stdout] 671 | match try!(command_parse(&line)) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bin/divans.rs:956:31 [INFO] [stdout] | [INFO] [stdout] 956 | window_size = try!(window_parse(&line)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/bin/divans.rs:1013:46 [INFO] [stdout] | [INFO] [stdout] 1013 | let mut obuffer = vec![0u8; buffer_size];; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bin/divans.rs:718:63 [INFO] [stdout] | [INFO] [stdout] 718 | ... free_state: &mut Fn(Compressor)->ItemVecAllocator) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 718 | free_state: &mut dyn Fn(Compressor)->ItemVecAllocator) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bin/divans.rs:103:32 [INFO] [stdout] | [INFO] [stdout] 103 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 103 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:169:43 [INFO] [stdout] | [INFO] [stdout] 169 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:329:47 [INFO] [stdout] | [INFO] [stdout] 329 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:350:60 [INFO] [stdout] | [INFO] [stdout] 350 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:366:47 [INFO] [stdout] | [INFO] [stdout] 366 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:377:47 [INFO] [stdout] | [INFO] [stdout] 377 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:393:47 [INFO] [stdout] | [INFO] [stdout] 393 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:409:47 [INFO] [stdout] | [INFO] [stdout] 409 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:416:47 [INFO] [stdout] | [INFO] [stdout] 416 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:425:55 [INFO] [stdout] | [INFO] [stdout] 425 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/bin/divans.rs:449:51 [INFO] [stdout] | [INFO] [stdout] 449 | ... msg.description())); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TestContextMixingPureAverage` is never constructed [INFO] [stdout] --> src/bin/benchmark.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | struct TestContextMixingPureAverage{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TestContextMixingPureAverage` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TestSimple` is never constructed [INFO] [stdout] --> src/bin/benchmark.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | struct TestSimple{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TestSimple` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/bin/integration_test.rs:222:24 [INFO] [stdout] | [INFO] [stdout] 222 | need => panic!(need), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `DivansOutputResult` [INFO] [stdout] | [INFO] [stdout] 222 | need => panic!("{:?}", need), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 222 - need => panic!(need), [INFO] [stdout] 222 + need => std::panic::panic_any(need), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | #[cfg(feature="division_table_gen")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stdout] --> src/probability/numeric.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg(not(feature="division_table_gen"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/arithmetic_coder.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | fn push_data(&mut self, &[u8]) -> usize; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/arithmetic_coder.rs:27:28 [INFO] [stdout] | [INFO] [stdout] 27 | fn pop_data(&mut self, &mut [u8]) -> usize; [INFO] [stdout] | ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut [u8]` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `Allocator`, and `StackAllocator` [INFO] [stdout] --> src/cmd_to_raw/mod.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, `SliceWrapper`, and `StackAllocator` [INFO] [stdout] --> src/raw_to_cmd/hash_match.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::slice_util::SliceReference` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use super::slice_util::SliceReference; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CopyCommand` and `DictCommand` [INFO] [stdout] --> src/raw_to_cmd/mod.rs:22:91 [INFO] [stdout] | [INFO] [stdout] 22 | pub use super::interface::{PredictionModeContextMap, Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `features` [INFO] [stdout] --> src/codec/weights.rs:84:7 [INFO] [stdout] | [INFO] [stdout] 84 | #[cfg(features="floating_point_context_mixing")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] help: there is a config with a similar name and different values [INFO] [stdout] | [INFO] [stdout] 84 - #[cfg(features="floating_point_context_mixing")] [INFO] [stdout] 84 + #[cfg(feature = "avoid-divide")] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `features` [INFO] [stdout] --> src/codec/weights.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] help: there is a config with a similar name and different values [INFO] [stdout] | [INFO] [stdout] 108 - #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stdout] 108 + #[cfg(not(feature = "avoid-divide"))] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CrossCommandBookKeeping` [INFO] [stdout] --> src/codec/specializations.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | pub use super::interface::{CrossCommandBookKeeping,LiteralBookKeeping}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:87:68 [INFO] [stdout] | [INFO] [stdout] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:87:89 [INFO] [stdout] | [INFO] [stdout] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a CopyCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:88:79 [INFO] [stdout] | [INFO] [stdout] 88 | fn get_source_literal_command<'a, ISlice:SliceWrapper+Default>(&self, &'a Command, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:89:72 [INFO] [stdout] | [INFO] [stdout] 89 | ... &'a LiteralCommand) -> &'a LiteralCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a LiteralCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:90:68 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/codec/interface.rs:90:89 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a DictCommand` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CrossCommandBookKeeping` [INFO] [stdout] --> src/codec/mod.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | CrossCommandBookKeeping, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/ans.rs:139:24 [INFO] [stdout] | [INFO] [stdout] 139 | const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stdout] 139 + const SCALE_MASK:u64 = (1u64 << LOG2_SCALE) - 1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, and `StackAllocator` [INFO] [stdout] --> src/brotli_ir_gen.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `FeatureFlagSliceType`, `LiteralBlockSwitch`, `LiteralCommand`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stdout] --> src/brotli_ir_gen.rs:22:28 [INFO] [stdout] | [INFO] [stdout] 22 | ...::{BlockSwitch, LiteralBlockSwitch, Command, Compressor, CopyCommand, Decompressor, DictCommand, LiteralCommand, Nop, NewWithAllocator, ArithmeticEncoderOrDecoder, LiteralPredictionModeNibble, PredictionModeContextMap, free_cmd, FeatureFlagSliceType, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncoderOrDecoderSpecialization` and `StrideSelection` [INFO] [stdout] --> src/brotli_ir_gen.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/divans_compressor.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `LiteralBlockSwitch`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stdout] --> src/divans_compressor.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | BlockSwitch, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | LiteralBlockSwitch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | CopyCommand, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 37 | Decompressor, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 38 | DictCommand, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 39 | LiteralCommand, [INFO] [stdout] 40 | Nop, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | LiteralPredictionModeNibble, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | free_cmd, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncoderOrDecoderSpecialization`, `StrideSelection`, and `default_crc` [INFO] [stdout] --> src/divans_compressor.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection, default_crc, CommandArray, CommandSliceArray}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub extern fn divans_new_compressor() -> *mut compressor::DivansCompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub unsafe extern fn divans_new_compressor_with_custom_alloc(allocators:CAllocator) -> *mut DivansCompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub unsafe extern fn divans_set_option(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub unsafe extern fn divans_encode(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe extern fn divans_encode_flush(state_ptr: *mut DivansCompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub unsafe extern fn divans_compressor_malloc_u8(state_ptr: *mut DivansCompressorState, size: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 120 | pub unsafe extern fn divans_compressor_free_u8(state_ptr: *mut DivansCompressorState, data: *mut u8, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 130 | pub unsafe extern fn divans_compressor_malloc_usize(state_ptr: *mut DivansCompressorState, size: usize) -> *mut usize { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 139 | pub unsafe extern fn divans_compressor_free_usize(state_ptr: *mut DivansCompressorState, data: *mut usize, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:159:12 [INFO] [stdout] | [INFO] [stdout] 159 | pub unsafe extern fn divans_free_compressor(state_ptr: *mut DivansCompressorState) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub extern fn divans_new_decompressor() -> *mut DivansDecompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | pub extern fn divans_new_serial_decompressor() -> *mut DivansDecompressorState{ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:213:12 [INFO] [stdout] | [INFO] [stdout] 213 | pub unsafe extern fn divans_new_decompressor_with_custom_alloc(allocators:CAllocator, skip_crc:u8, multithread: u8) -> *mut DivansDecompr... [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:236:12 [INFO] [stdout] | [INFO] [stdout] 236 | pub unsafe extern fn divans_decode(state_ptr: *mut DivansDecompressorState, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | pub unsafe extern fn divans_decompressor_malloc_u8(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 285 | pub unsafe extern fn divans_decompressor_free_u8(state_ptr: *mut DivansDecompressorState, data: *mut u8, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub unsafe extern fn divans_decompressor_malloc_usize(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut usize { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:303:12 [INFO] [stdout] | [INFO] [stdout] 303 | pub unsafe extern fn divans_decompressor_free_usize(state_ptr: *mut DivansDecompressorState, data: *mut usize, size: usize) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/ffi/mod.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub unsafe extern fn divans_free_decompressor(state_ptr: *mut DivansDecompressorState) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/reader.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stdout] --> src/writer.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:256:5 [INFO] [stdout] | [INFO] [stdout] 256 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:258:5 [INFO] [stdout] | [INFO] [stdout] 258 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 262 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 266 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:274:5 [INFO] [stdout] | [INFO] [stdout] 274 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:280:5 [INFO] [stdout] | [INFO] [stdout] 280 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:282:5 [INFO] [stdout] | [INFO] [stdout] 282 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:284:5 [INFO] [stdout] | [INFO] [stdout] 284 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:286:5 [INFO] [stdout] | [INFO] [stdout] 286 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:288:5 [INFO] [stdout] | [INFO] [stdout] 288 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:368:5 [INFO] [stdout] | [INFO] [stdout] 368 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 386 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:390:5 [INFO] [stdout] | [INFO] [stdout] 390 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:393:5 [INFO] [stdout] | [INFO] [stdout] 393 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/interface.rs:405:5 [INFO] [stdout] | [INFO] [stdout] 405 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/arithmetic_coder.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/threading.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | #[inline(always)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/mod.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 4 | use core; [INFO] [stdout] | --------- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/interface.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 8 | pub type DivansReturnCode = u8; [INFO] [stdout] | ------------------------------- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/interface.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 42 | #[derive(Clone)] [INFO] [stdout] 43 | / pub struct CAllocator { [INFO] [stdout] 44 | | pub alloc_func: Option *mut c_void>, [INFO] [stdout] 45 | | pub free_func: Option ()>, [INFO] [stdout] 46 | | pub opaque: *mut c_void, [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/compressor.rs:267:1 [INFO] [stdout] | [INFO] [stdout] 267 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 268 | / pub struct DivansCompressorState { [INFO] [stdout] 269 | | pub custom_allocator: CAllocator, [INFO] [stdout] 270 | | pub compressor: CompressorState [INFO] [stdout] 271 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attribute should be applied to a free function, impl method or static [INFO] [stdout] --> src/ffi/decompressor.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 10 | / pub struct DivansDecompressorState { [INFO] [stdout] 11 | | pub custom_allocator: CAllocator, [INFO] [stdout] 12 | | pub decompressor: ::DivansDecompressor<, SubclassableAl... [INFO] [stdout] 13 | | SubclassableAllocator, [INFO] [stdout] 14 | | SubclassableAllocator<::DefaultCDF16>, [INFO] [stdout] 15 | | SubclassableAllocator>, [INFO] [stdout] 16 | | } [INFO] [stdout] | |_- not a free function, impl method or static [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reader.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 24 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:91:25 [INFO] [stdout] | [INFO] [stdout] 91 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:112:25 [INFO] [stdout] | [INFO] [stdout] 112 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:129:25 [INFO] [stdout] | [INFO] [stdout] 129 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:145:25 [INFO] [stdout] | [INFO] [stdout] 145 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:175:29 [INFO] [stdout] | [INFO] [stdout] 175 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:204:25 [INFO] [stdout] | [INFO] [stdout] 204 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:231:25 [INFO] [stdout] | [INFO] [stdout] 231 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/copy.rs:250:33 [INFO] [stdout] | [INFO] [stdout] 250 | ... let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:84:25 [INFO] [stdout] | [INFO] [stdout] 84 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeBegNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:100:25 [INFO] [stdout] | [INFO] [stdout] 100 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeLastNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:119:25 [INFO] [stdout] | [INFO] [stdout] 119 | let mut nibble_prob = superstate.bk.dict_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:139:25 [INFO] [stdout] | [INFO] [stdout] 139 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/dict.rs:150:25 [INFO] [stdout] | [INFO] [stdout] 150 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:294:16 [INFO] [stdout] | [INFO] [stdout] 294 | let mut byte_to_encode_val = specialization.get_literal_byte(in_cmd, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:572:25 [INFO] [stdout] | [INFO] [stdout] 572 | let mut nibble_prob = superstate.bk.lit_len_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:600:25 [INFO] [stdout] | [INFO] [stdout] 600 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeBegNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:625:25 [INFO] [stdout] | [INFO] [stdout] 625 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeLastNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:640:25 [INFO] [stdout] | [INFO] [stdout] 640 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeMantissaNib, (ctype,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/literal.rs:707:30 [INFO] [stdout] | [INFO] [stdout] 707 | Some(mut lc) => { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Only, (0,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:195:28 [INFO] [stdout] | [INFO] [stdout] 195 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:211:28 [INFO] [stdout] | [INFO] [stdout] 211 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:235:24 [INFO] [stdout] | [INFO] [stdout] 235 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::ContextMapSpeedPalette, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:291:28 [INFO] [stdout] | [INFO] [stdout] 291 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Mnemonic, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:320:28 [INFO] [stdout] | [INFO] [stdout] 320 | let mut out_context_map = match context_map_type { [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:343:24 [INFO] [stdout] | [INFO] [stdout] 343 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::FirstNibble, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:363:28 [INFO] [stdout] | [INFO] [stdout] 363 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::SecondNibble, (context_map_type as usize,)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:371:24 [INFO] [stdout] | [INFO] [stdout] 371 | let mut out_context_map = match context_map_type { [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:395:24 [INFO] [stdout] | [INFO] [stdout] 395 | let mut prior = if index >= 256 && self.pm.has_context_speeds() { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/context_map.rs:401:28 [INFO] [stdout] | [INFO] [stdout] 401 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:72:25 [INFO] [stdout] | [INFO] [stdout] 72 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::Mnemonic, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:88:25 [INFO] [stdout] | [INFO] [stdout] 88 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::FirstNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:97:25 [INFO] [stdout] | [INFO] [stdout] 97 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::SecondNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/codec/block_type.rs:181:25 [INFO] [stdout] | [INFO] [stdout] 181 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::StrideNibble, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test_ans.rs:215:17 [INFO] [stdout] | [INFO] [stdout] 215 | let mut q = e.get_internal_buffer_mut(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test_ans.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | let mut q = e.get_internal_buffer_mut(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test_ans.rs:317:17 [INFO] [stdout] | [INFO] [stdout] 317 | let mut q = d.get_internal_buffer_mut(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test_ans.rs:338:13 [INFO] [stdout] | [INFO] [stdout] 338 | let mut q = d.get_internal_buffer_mut(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test_ans.rs:380:17 [INFO] [stdout] | [INFO] [stdout] 380 | let mut q = e.get_internal_buffer_mut(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test_ans.rs:443:17 [INFO] [stdout] | [INFO] [stdout] 443 | let mut q = d.get_internal_buffer_mut(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ir_optimize/mod.rs:198:21 [INFO] [stdout] | [INFO] [stdout] 198 | let mut should_merge = match should_merge(lit, copy, index, mb, &mut actuary, &mut distance_cache) { [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mux.rs:463:20 [INFO] [stdout] | [INFO] [stdout] 463 | let mut is_lagging = max_flush > MAX_FLUSH_VARIANCE + self.last_flush[index]; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `put_8bit` is never used [INFO] [stdout] --> src/arithmetic_coder.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait EntropyEncoder { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 122 | fn put_8bit(&mut self, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> src/multithreading.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | struct ThreadEvent(ThreadEventType, u32, Duration); [INFO] [stdout] | ----------- ^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `ThreadEvent` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `read_offset` is never read [INFO] [stdout] --> src/writer.rs:294:13 [INFO] [stdout] | [INFO] [stdout] 292 | pub struct UnlimitedBuffer { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 293 | pub data: Vec, [INFO] [stdout] 294 | pub read_offset: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/interface.rs:259:21 [INFO] [stdout] | [INFO] [stdout] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS]; [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS]; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/interface.rs:275:20 [INFO] [stdout] | [INFO] [stdout] 275 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS]; [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 275 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS]; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> src/probability/numeric.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | for n in nums.into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 78 - for n in nums.into_iter() { [INFO] [stdout] 78 + for n in nums.iter() { [INFO] [stdout] | [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 78 - for n in nums.into_iter() { [INFO] [stdout] 78 + for n in nums { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> src/probability/numeric.rs:79:29 [INFO] [stdout] | [INFO] [stdout] 79 | for d in denoms.into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 79 - for d in denoms.into_iter() { [INFO] [stdout] 79 + for d in denoms.iter() { [INFO] [stdout] | [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 79 - for d in denoms.into_iter() { [INFO] [stdout] 79 + for d in denoms { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:920:26 [INFO] [stdout] | [INFO] [stdout] 920 | fn get_input_command(&self, offset: usize) -> Command; [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 920 | fn get_input_command(&self, offset: usize) -> Command>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:928:26 [INFO] [stdout] | [INFO] [stdout] 928 | fn get_input_command(&self, _offset: usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 928 | fn get_input_command(&self, _offset: usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/interface.rs:940:26 [INFO] [stdout] | [INFO] [stdout] 940 | fn get_input_command(&self, offset: usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 940 | fn get_input_command(&self, offset: usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/codec/io.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 48 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 48 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/brotli_ir_gen.rs:131:16 [INFO] [stdout] | [INFO] [stdout] 131 | panic!(m) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 131 | panic!("{}", m) [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 131 - panic!(m) [INFO] [stdout] 131 + std::panic::panic_any(m) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/brotli_ir_gen.rs:636:26 [INFO] [stdout] | [INFO] [stdout] 636 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stdout] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 636 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/divans_compressor.rs:179:26 [INFO] [stdout] | [INFO] [stdout] 179 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stdout] | ^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 179 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/divans_decompressor.rs:282:9 [INFO] [stdout] | [INFO] [stdout] 282 | / core::mem::replace(self, [INFO] [stdout] 283 | | DivansDecompressor::Decode( [INFO] [stdout] 284 | | DivansProcess:: { [INFO] [stdout] 285 | | codec:Some(codec), [INFO] [stdout] ... | [INFO] [stdout] 288 | | mcommand:mcommand, [INFO] [stdout] 289 | | })); [INFO] [stdout] | |__________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 282 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ir_optimize/mod.rs:205:21 [INFO] [stdout] | [INFO] [stdout] 205 | core::mem::replace(copy, CopyCommand::nop()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = core::mem::replace(copy, CopyCommand::nop()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ir_optimize/mod.rs:219:21 [INFO] [stdout] | [INFO] [stdout] 219 | core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 219 | let _ = core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/statistics_tracking_codec.rs:174:26 [INFO] [stdout] | [INFO] [stdout] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/statistics_tracking_codec.rs:185:26 [INFO] [stdout] | [INFO] [stdout] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/cache.rs:62:30 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference{ [INFO] [stdout] | ^^^^^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference<'_>{ [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/ir_optimize/cache.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut{ [INFO] [stdout] | ^^^^^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut<'_>{ [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:122:20 [INFO] [stdout] | [INFO] [stdout] 122 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 122 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:169:21 [INFO] [stdout] | [INFO] [stdout] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:583:20 [INFO] [stdout] | [INFO] [stdout] 583 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 583 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/mux.rs:620:21 [INFO] [stdout] | [INFO] [stdout] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/threading.rs:327:20 [INFO] [stdout] | [INFO] [stdout] 327 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stdout] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 327 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/ffi/alloc_util.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 213 | Box::from_raw(slice_ref); // free on drop [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 213 | let _ = Box::from_raw(slice_ref); // free on drop [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ffi/compressor.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | / core::mem::replace(self, [INFO] [stdout] 177 | | CompressorState::InternalCompressor( [INFO] [stdout] 178 | | InternalCompressorFactory::new( [INFO] [stdout] 179 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] ... | [INFO] [stdout] 182 | | opts, [INFO] [stdout] 183 | | ()))); [INFO] [stdout] | |________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 176 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used [INFO] [stdout] --> src/ffi/compressor.rs:186:17 [INFO] [stdout] | [INFO] [stdout] 186 | / core::mem::replace(self, [INFO] [stdout] 187 | | CompressorState::BrotliCompressor( [INFO] [stdout] 188 | | BrotliFactory::new( [INFO] [stdout] 189 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] ... | [INFO] [stdout] 209 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stdout] 210 | | )))); [INFO] [stdout] | |_______________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 186 | let _ = core::mem::replace(self, [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/reader.rs:401:32 [INFO] [stdout] | [INFO] [stdout] 401 | panic!(e) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 401 | panic!("{}", e) [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 401 - panic!(e) [INFO] [stdout] 401 + std::panic::panic_any(e) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/reader.rs:431:38 [INFO] [stdout] | [INFO] [stdout] 431 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 431 | Err(e) => panic!("{}", e), [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 431 - Err(e) => panic!(e), [INFO] [stdout] 431 + Err(e) => std::panic::panic_any(e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/writer.rs:364:38 [INFO] [stdout] | [INFO] [stdout] 364 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 364 | Err(e) => panic!("{}", e), [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 364 - Err(e) => panic!(e), [INFO] [stdout] 364 + Err(e) => std::panic::panic_any(e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/writer.rs:374:25 [INFO] [stdout] | [INFO] [stdout] 374 | panic!(e); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 374 | panic!("{}", e); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 374 - panic!(e); [INFO] [stdout] 374 + std::panic::panic_any(e); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/writer.rs:399:38 [INFO] [stdout] | [INFO] [stdout] 399 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 399 | Err(e) => panic!("{}", e), [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 399 - Err(e) => panic!(e), [INFO] [stdout] 399 + Err(e) => std::panic::panic_any(e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/writer.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 409 | panic!(e); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 409 | panic!("{}", e); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 409 - panic!(e); [INFO] [stdout] 409 + std::panic::panic_any(e); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 8.93s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "21675d8a2d5f081b06c5b046312390a45fbf1c39ed30249de0a3897d295791e3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "21675d8a2d5f081b06c5b046312390a45fbf1c39ed30249de0a3897d295791e3", kill_on_drop: false }` [INFO] [stdout] 21675d8a2d5f081b06c5b046312390a45fbf1c39ed30249de0a3897d295791e3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 7851f98b5b09ea5b582c2683322033d3517223a7068a4b9a96aec7b3bb7c4601 [INFO] running `Command { std: "docker" "start" "-a" "7851f98b5b09ea5b582c2683322033d3517223a7068a4b9a96aec7b3bb7c4601", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: dropping unsupported crate type `cdylib` for target `x86_64-unknown-linux-musl` [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stderr] --> src/probability/numeric.rs:1:11 [INFO] [stderr] | [INFO] [stderr] 1 | #[cfg(not(feature="division_table_gen"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stderr] --> src/probability/numeric.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | #[cfg(not(feature="division_table_gen"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stderr] --> src/probability/numeric.rs:8:7 [INFO] [stderr] | [INFO] [stderr] 8 | #[cfg(feature="division_table_gen")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stderr] --> src/probability/numeric.rs:20:11 [INFO] [stderr] | [INFO] [stderr] 20 | #[cfg(not(feature="division_table_gen"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `division_table_gen` [INFO] [stderr] --> src/probability/numeric.rs:54:11 [INFO] [stderr] | [INFO] [stderr] 54 | #[cfg(not(feature="division_table_gen"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `division_table_gen` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/arithmetic_coder.rs:25:29 [INFO] [stderr] | [INFO] [stderr] 25 | fn push_data(&mut self, &[u8]) -> usize; [INFO] [stderr] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/arithmetic_coder.rs:27:28 [INFO] [stderr] | [INFO] [stderr] 27 | fn pop_data(&mut self, &mut [u8]) -> usize; [INFO] [stderr] | ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut [u8]` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory`, `Allocator`, and `StackAllocator` [INFO] [stderr] --> src/cmd_to_raw/mod.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `FeatureFlagSliceType` and `LiteralCommand` [INFO] [stderr] --> src/cmd_to_raw/mod.rs:22:49 [INFO] [stderr] | [INFO] [stderr] 22 | pub use super::interface::{Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, `SliceWrapper`, and `StackAllocator` [INFO] [stderr] --> src/raw_to_cmd/hash_match.rs:16:17 [INFO] [stderr] | [INFO] [stderr] 16 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stderr] --> src/raw_to_cmd/mod.rs:19:17 [INFO] [stderr] | [INFO] [stderr] 19 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::slice_util::SliceReference` [INFO] [stderr] --> src/raw_to_cmd/mod.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | pub use super::slice_util::SliceReference; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CopyCommand` and `DictCommand` [INFO] [stderr] --> src/raw_to_cmd/mod.rs:22:91 [INFO] [stderr] | [INFO] [stderr] 22 | pub use super::interface::{PredictionModeContextMap, Command, Compressor, LiteralCommand, CopyCommand, DictCommand, FeatureFlagSliceType}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `features` [INFO] [stderr] --> src/codec/weights.rs:84:7 [INFO] [stderr] | [INFO] [stderr] 84 | #[cfg(features="floating_point_context_mixing")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] help: there is a config with a similar name and different values [INFO] [stderr] | [INFO] [stderr] 84 - #[cfg(features="floating_point_context_mixing")] [INFO] [stderr] 84 + #[cfg(feature = "avoid-divide")] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `features` [INFO] [stderr] --> src/codec/weights.rs:108:11 [INFO] [stderr] | [INFO] [stderr] 108 | #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] help: there is a config with a similar name and different values [INFO] [stderr] | [INFO] [stderr] 108 - #[cfg(not(features="floating_point_context_mixing"))] [INFO] [stderr] 108 + #[cfg(not(feature = "avoid-divide"))] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `CrossCommandBookKeeping` [INFO] [stderr] --> src/codec/specializations.rs:3:28 [INFO] [stderr] | [INFO] [stderr] 3 | pub use super::interface::{CrossCommandBookKeeping,LiteralBookKeeping}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/codec/interface.rs:87:68 [INFO] [stderr] | [INFO] [stderr] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/codec/interface.rs:87:89 [INFO] [stderr] | [INFO] [stderr] 87 | fn get_source_copy_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a CopyCommand) -> &'a CopyCommand; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a CopyCommand` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/codec/interface.rs:88:79 [INFO] [stderr] | [INFO] [stderr] 88 | fn get_source_literal_command<'a, ISlice:SliceWrapper+Default>(&self, &'a Command, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/codec/interface.rs:89:72 [INFO] [stderr] | [INFO] [stderr] 89 | ... &'a LiteralCommand) -> &'a LiteralCommand; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a LiteralCommand` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/codec/interface.rs:90:68 [INFO] [stderr] | [INFO] [stderr] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a Command` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/codec/interface.rs:90:89 [INFO] [stderr] | [INFO] [stderr] 90 | fn get_source_dict_command<'a, ISlice:SliceWrapper>(&self, &'a Command, &'a DictCommand) -> &'a DictCommand; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &'a DictCommand` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: unused import: `CrossCommandBookKeeping` [INFO] [stderr] --> src/codec/mod.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | CrossCommandBookKeeping, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/ans.rs:139:24 [INFO] [stderr] | [INFO] [stderr] 139 | const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 139 - const SCALE_MASK:u64 = ((1u64 << LOG2_SCALE) - 1); [INFO] [stderr] 139 + const SCALE_MASK:u64 = (1u64 << LOG2_SCALE) - 1; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory`, `SliceWrapperMut`, and `StackAllocator` [INFO] [stderr] --> src/brotli_ir_gen.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `FeatureFlagSliceType`, `LiteralBlockSwitch`, `LiteralCommand`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stderr] --> src/brotli_ir_gen.rs:22:28 [INFO] [stderr] | [INFO] [stderr] 22 | ...::{BlockSwitch, LiteralBlockSwitch, Command, Compressor, CopyCommand, Decompressor, DictCommand, LiteralCommand, Nop, NewWithAllocator, ArithmeticEncoderOrDecoder, LiteralPredictionModeNibble, PredictionModeContextMap, free_cmd, FeatureFlagSliceType, [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `EncoderOrDecoderSpecialization` and `StrideSelection` [INFO] [stderr] --> src/brotli_ir_gen.rs:30:17 [INFO] [stderr] | [INFO] [stderr] 30 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stderr] --> src/divans_compressor.rs:26:24 [INFO] [stderr] | [INFO] [stderr] 26 | pub use super::alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BlockSwitch`, `CopyCommand`, `Decompressor`, `DictCommand`, `LiteralBlockSwitch`, `LiteralPredictionModeNibble`, `Nop`, and `free_cmd` [INFO] [stderr] --> src/divans_compressor.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | BlockSwitch, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 33 | LiteralBlockSwitch, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 36 | CopyCommand, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 37 | Decompressor, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 38 | DictCommand, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 39 | LiteralCommand, [INFO] [stderr] 40 | Nop, [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | LiteralPredictionModeNibble, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 46 | free_cmd, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `EncoderOrDecoderSpecialization`, `StrideSelection`, and `default_crc` [INFO] [stderr] --> src/divans_compressor.rs:50:17 [INFO] [stderr] | [INFO] [stderr] 50 | pub use codec::{EncoderOrDecoderSpecialization, DivansCodec, StrideSelection, default_crc, CommandArray, CommandSliceArray}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub extern fn divans_new_compressor() -> *mut compressor::DivansCompressorState{ [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(missing_abi)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:39:12 [INFO] [stderr] | [INFO] [stderr] 39 | pub unsafe extern fn divans_new_compressor_with_custom_alloc(allocators:CAllocator) -> *mut DivansCompressorState{ [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:58:12 [INFO] [stderr] | [INFO] [stderr] 58 | pub unsafe extern fn divans_set_option(state_ptr: *mut DivansCompressorState, [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 70 | pub unsafe extern fn divans_encode(state_ptr: *mut DivansCompressorState, [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:94:12 [INFO] [stderr] | [INFO] [stderr] 94 | pub unsafe extern fn divans_encode_flush(state_ptr: *mut DivansCompressorState, [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:111:12 [INFO] [stderr] | [INFO] [stderr] 111 | pub unsafe extern fn divans_compressor_malloc_u8(state_ptr: *mut DivansCompressorState, size: usize) -> *mut u8 { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:120:12 [INFO] [stderr] | [INFO] [stderr] 120 | pub unsafe extern fn divans_compressor_free_u8(state_ptr: *mut DivansCompressorState, data: *mut u8, size: usize) { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:130:12 [INFO] [stderr] | [INFO] [stderr] 130 | pub unsafe extern fn divans_compressor_malloc_usize(state_ptr: *mut DivansCompressorState, size: usize) -> *mut usize { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:139:12 [INFO] [stderr] | [INFO] [stderr] 139 | pub unsafe extern fn divans_compressor_free_usize(state_ptr: *mut DivansCompressorState, data: *mut usize, size: usize) { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:159:12 [INFO] [stderr] | [INFO] [stderr] 159 | pub unsafe extern fn divans_free_compressor(state_ptr: *mut DivansCompressorState) { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:178:5 [INFO] [stderr] | [INFO] [stderr] 178 | pub extern fn divans_new_decompressor() -> *mut DivansDecompressorState{ [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | pub extern fn divans_new_serial_decompressor() -> *mut DivansDecompressorState{ [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:213:12 [INFO] [stderr] | [INFO] [stderr] 213 | pub unsafe extern fn divans_new_decompressor_with_custom_alloc(allocators:CAllocator, skip_crc:u8, multithread: u8) -> *mut DivansDecompr... [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:236:12 [INFO] [stderr] | [INFO] [stderr] 236 | pub unsafe extern fn divans_decode(state_ptr: *mut DivansDecompressorState, [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:276:12 [INFO] [stderr] | [INFO] [stderr] 276 | pub unsafe extern fn divans_decompressor_malloc_u8(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut u8 { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:285:12 [INFO] [stderr] | [INFO] [stderr] 285 | pub unsafe extern fn divans_decompressor_free_u8(state_ptr: *mut DivansDecompressorState, data: *mut u8, size: usize) { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:294:12 [INFO] [stderr] | [INFO] [stderr] 294 | pub unsafe extern fn divans_decompressor_malloc_usize(state_ptr: *mut DivansDecompressorState, size: usize) -> *mut usize { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:303:12 [INFO] [stderr] | [INFO] [stderr] 303 | pub unsafe extern fn divans_decompressor_free_usize(state_ptr: *mut DivansDecompressorState, data: *mut usize, size: usize) { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stderr] --> src/ffi/mod.rs:312:12 [INFO] [stderr] | [INFO] [stderr] 312 | pub unsafe extern fn divans_free_decompressor(state_ptr: *mut DivansDecompressorState) { [INFO] [stderr] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stderr] --> src/reader.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AllocatedStackMemory` and `StackAllocator` [INFO] [stderr] --> src/writer.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | pub use alloc::{AllocatedStackMemory, Allocator, SliceWrapper, SliceWrapperMut, StackAllocator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:256:5 [INFO] [stderr] | [INFO] [stderr] 256 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:258:5 [INFO] [stderr] | [INFO] [stderr] 258 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:262:5 [INFO] [stderr] | [INFO] [stderr] 262 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:264:5 [INFO] [stderr] | [INFO] [stderr] 264 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:266:5 [INFO] [stderr] | [INFO] [stderr] 266 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:274:5 [INFO] [stderr] | [INFO] [stderr] 274 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:276:5 [INFO] [stderr] | [INFO] [stderr] 276 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:278:5 [INFO] [stderr] | [INFO] [stderr] 278 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:280:5 [INFO] [stderr] | [INFO] [stderr] 280 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:282:5 [INFO] [stderr] | [INFO] [stderr] 282 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:284:5 [INFO] [stderr] | [INFO] [stderr] 284 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:286:5 [INFO] [stderr] | [INFO] [stderr] 286 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:288:5 [INFO] [stderr] | [INFO] [stderr] 288 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:368:5 [INFO] [stderr] | [INFO] [stderr] 368 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:390:5 [INFO] [stderr] | [INFO] [stderr] 390 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:393:5 [INFO] [stderr] | [INFO] [stderr] 393 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/interface.rs:405:5 [INFO] [stderr] | [INFO] [stderr] 405 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/arithmetic_coder.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/arithmetic_coder.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/arithmetic_coder.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/arithmetic_coder.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:61:5 [INFO] [stderr] | [INFO] [stderr] 61 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/threading.rs:82:5 [INFO] [stderr] | [INFO] [stderr] 82 | #[inline(always)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: attribute should be applied to a free function, impl method or static [INFO] [stderr] --> src/ffi/mod.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[no_mangle] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 4 | use core; [INFO] [stderr] | --------- not a free function, impl method or static [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: attribute should be applied to a free function, impl method or static [INFO] [stderr] --> src/ffi/interface.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | #[no_mangle] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 8 | pub type DivansReturnCode = u8; [INFO] [stderr] | ------------------------------- not a free function, impl method or static [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: attribute should be applied to a free function, impl method or static [INFO] [stderr] --> src/ffi/interface.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | #[no_mangle] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 42 | #[derive(Clone)] [INFO] [stderr] 43 | / pub struct CAllocator { [INFO] [stderr] 44 | | pub alloc_func: Option *mut c_void>, [INFO] [stderr] 45 | | pub free_func: Option ()>, [INFO] [stderr] 46 | | pub opaque: *mut c_void, [INFO] [stderr] 47 | | } [INFO] [stderr] | |_- not a free function, impl method or static [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: attribute should be applied to a free function, impl method or static [INFO] [stderr] --> src/ffi/compressor.rs:267:1 [INFO] [stderr] | [INFO] [stderr] 267 | #[no_mangle] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 268 | / pub struct DivansCompressorState { [INFO] [stderr] 269 | | pub custom_allocator: CAllocator, [INFO] [stderr] 270 | | pub compressor: CompressorState [INFO] [stderr] 271 | | } [INFO] [stderr] | |_- not a free function, impl method or static [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: attribute should be applied to a free function, impl method or static [INFO] [stderr] --> src/ffi/decompressor.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | #[no_mangle] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 10 | / pub struct DivansDecompressorState { [INFO] [stderr] 11 | | pub custom_allocator: CAllocator, [INFO] [stderr] 12 | | pub decompressor: ::DivansDecompressor<, SubclassableAl... [INFO] [stderr] 13 | | SubclassableAllocator, [INFO] [stderr] 14 | | SubclassableAllocator<::DefaultCDF16>, [INFO] [stderr] 15 | | SubclassableAllocator>, [INFO] [stderr] 16 | | } [INFO] [stderr] | |_- not a free function, impl method or static [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:24:32 [INFO] [stderr] | [INFO] [stderr] 24 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 24 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:91:25 [INFO] [stderr] | [INFO] [stderr] 91 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:112:25 [INFO] [stderr] | [INFO] [stderr] 112 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:129:25 [INFO] [stderr] | [INFO] [stderr] 129 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:145:25 [INFO] [stderr] | [INFO] [stderr] 145 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:175:29 [INFO] [stderr] | [INFO] [stderr] 175 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:204:25 [INFO] [stderr] | [INFO] [stderr] 204 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:231:25 [INFO] [stderr] | [INFO] [stderr] 231 | let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/copy.rs:250:33 [INFO] [stderr] | [INFO] [stderr] 250 | ... let mut nibble_prob = superstate.bk.copy_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/dict.rs:84:25 [INFO] [stderr] | [INFO] [stderr] 84 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeBegNib, (ctype,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/dict.rs:100:25 [INFO] [stderr] | [INFO] [stderr] 100 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::SizeLastNib, (ctype,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/dict.rs:119:25 [INFO] [stderr] | [INFO] [stderr] 119 | let mut nibble_prob = superstate.bk.dict_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/dict.rs:139:25 [INFO] [stderr] | [INFO] [stderr] 139 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/dict.rs:150:25 [INFO] [stderr] | [INFO] [stderr] 150 | let mut nibble_prob = superstate.bk.dict_priors.get(DictCommandNibblePriorType::Transform, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/literal.rs:294:16 [INFO] [stderr] | [INFO] [stderr] 294 | let mut byte_to_encode_val = specialization.get_literal_byte(in_cmd, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/literal.rs:572:25 [INFO] [stderr] | [INFO] [stderr] 572 | let mut nibble_prob = superstate.bk.lit_len_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/literal.rs:600:25 [INFO] [stderr] | [INFO] [stderr] 600 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeBegNib, (ctype,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/literal.rs:625:25 [INFO] [stderr] | [INFO] [stderr] 625 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeLastNib, (ctype,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/literal.rs:640:25 [INFO] [stderr] | [INFO] [stderr] 640 | let mut nibble_prob = superstate.bk.lit_len_priors.get(LiteralCommandPriorType::SizeMantissaNib, (ctype,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/literal.rs:707:30 [INFO] [stderr] | [INFO] [stderr] 707 | Some(mut lc) => { [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:174:28 [INFO] [stderr] | [INFO] [stderr] 174 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Only, (0,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:195:28 [INFO] [stderr] | [INFO] [stderr] 195 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:211:28 [INFO] [stderr] | [INFO] [stderr] 211 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:235:24 [INFO] [stderr] | [INFO] [stderr] 235 | let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::ContextMapSpeedPalette, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:291:28 [INFO] [stderr] | [INFO] [stderr] 291 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::Mnemonic, (context_map_type as usize,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:320:28 [INFO] [stderr] | [INFO] [stderr] 320 | let mut out_context_map = match context_map_type { [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:343:24 [INFO] [stderr] | [INFO] [stderr] 343 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::FirstNibble, (context_map_type as usize,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:363:28 [INFO] [stderr] | [INFO] [stderr] 363 | ... let mut nibble_prob = superstate.bk.prediction_priors.get(PredictionModePriorType::SecondNibble, (context_map_type as usize,)); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:371:24 [INFO] [stderr] | [INFO] [stderr] 371 | let mut out_context_map = match context_map_type { [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:395:24 [INFO] [stderr] | [INFO] [stderr] 395 | let mut prior = if index >= 256 && self.pm.has_context_speeds() { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/context_map.rs:401:28 [INFO] [stderr] | [INFO] [stderr] 401 | let mut nibble_prob = superstate.bk.prediction_priors.get( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/block_type.rs:72:25 [INFO] [stderr] | [INFO] [stderr] 72 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::Mnemonic, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/block_type.rs:88:25 [INFO] [stderr] | [INFO] [stderr] 88 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::FirstNibble, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/block_type.rs:97:25 [INFO] [stderr] | [INFO] [stderr] 97 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::SecondNibble, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/codec/block_type.rs:181:25 [INFO] [stderr] | [INFO] [stderr] 181 | let mut nibble_prob = superstate.bk.btype_priors.get(BlockTypePriorType::StrideNibble, [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ir_optimize/mod.rs:198:21 [INFO] [stderr] | [INFO] [stderr] 198 | let mut should_merge = match should_merge(lit, copy, index, mb, &mut actuary, &mut distance_cache) { [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mux.rs:463:20 [INFO] [stderr] | [INFO] [stderr] 463 | let mut is_lagging = max_flush > MAX_FLUSH_VARIANCE + self.last_flush[index]; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method `put_8bit` is never used [INFO] [stderr] --> src/arithmetic_coder.rs:122:8 [INFO] [stderr] | [INFO] [stderr] 84 | pub trait EntropyEncoder { [INFO] [stderr] | -------------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 122 | fn put_8bit(&mut self, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: fields `0`, `1`, and `2` are never read [INFO] [stderr] --> src/multithreading.rs:52:20 [INFO] [stderr] | [INFO] [stderr] 52 | struct ThreadEvent(ThreadEventType, u32, Duration); [INFO] [stderr] | ----------- ^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | fields in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing these fields [INFO] [stderr] = note: `ThreadEvent` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/interface.rs:259:21 [INFO] [stderr] | [INFO] [stderr] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS]; [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 259 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS]; [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/interface.rs:275:20 [INFO] [stderr] | [INFO] [stderr] 275 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS]; [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 275 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS]; [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/codec/interface.rs:920:26 [INFO] [stderr] | [INFO] [stderr] 920 | fn get_input_command(&self, offset: usize) -> Command; [INFO] [stderr] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 920 | fn get_input_command(&self, offset: usize) -> Command>; [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/codec/interface.rs:928:26 [INFO] [stderr] | [INFO] [stderr] 928 | fn get_input_command(&self, _offset: usize) -> Command { [INFO] [stderr] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 928 | fn get_input_command(&self, _offset: usize) -> Command> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/codec/interface.rs:940:26 [INFO] [stderr] | [INFO] [stderr] 940 | fn get_input_command(&self, offset: usize) -> Command { [INFO] [stderr] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 940 | fn get_input_command(&self, offset: usize) -> Command> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/codec/io.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 48 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/brotli_ir_gen.rs:131:16 [INFO] [stderr] | [INFO] [stderr] 131 | panic!(m) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 131 | panic!("{}", m) [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 131 - panic!(m) [INFO] [stderr] 131 + std::panic::panic_any(m) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/brotli_ir_gen.rs:636:26 [INFO] [stderr] | [INFO] [stderr] 636 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stderr] | ^^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 636 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/divans_compressor.rs:179:26 [INFO] [stderr] | [INFO] [stderr] 179 | fn get_input_command(&self, offset:usize) -> Command { [INFO] [stderr] | ^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 179 | fn get_input_command(&self, offset:usize) -> Command> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used [INFO] [stderr] --> src/divans_decompressor.rs:282:9 [INFO] [stderr] | [INFO] [stderr] 282 | / core::mem::replace(self, [INFO] [stderr] 283 | | DivansDecompressor::Decode( [INFO] [stderr] 284 | | DivansProcess:: { [INFO] [stderr] 285 | | codec:Some(codec), [INFO] [stderr] ... | [INFO] [stderr] 288 | | mcommand:mcommand, [INFO] [stderr] 289 | | })); [INFO] [stderr] | |__________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 282 | let _ = core::mem::replace(self, [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used [INFO] [stderr] --> src/ir_optimize/mod.rs:205:21 [INFO] [stderr] | [INFO] [stderr] 205 | core::mem::replace(copy, CopyCommand::nop()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 205 | let _ = core::mem::replace(copy, CopyCommand::nop()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used [INFO] [stderr] --> src/ir_optimize/mod.rs:219:21 [INFO] [stderr] | [INFO] [stderr] 219 | core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 219 | let _ = core::mem::replace(&mut item_a[0], Command::Copy(CopyCommand::nop())); // replace with a copy [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/ir_optimize/statistics_tracking_codec.rs:174:26 [INFO] [stderr] | [INFO] [stderr] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command { [INFO] [stderr] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 174 | fn get_input_command(&self, _offset:usize) -> brotli::interface::Command> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/ir_optimize/statistics_tracking_codec.rs:185:26 [INFO] [stderr] | [INFO] [stderr] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command { [INFO] [stderr] | ^^^^^ this lifetime flows to the output ---------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 185 | fn get_input_command(&self, offset:usize) -> brotli::interface::Command> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/ir_optimize/cache.rs:62:30 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference{ [INFO] [stderr] | ^^^^^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 62 | pub fn get_cache_hit_log(&mut self, cmd_offset:usize) -> CacheHitReference<'_>{ [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/ir_optimize/cache.rs:69:30 [INFO] [stderr] | [INFO] [stderr] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut{ [INFO] [stderr] | ^^^^^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 69 | fn get_cache_hit_log_mut(&mut self, cmd_offset:usize) -> CacheHitReferenceMut<'_>{ [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/mux.rs:122:20 [INFO] [stderr] | [INFO] [stderr] 122 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 122 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/mux.rs:169:21 [INFO] [stderr] | [INFO] [stderr] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 169 | fn write_buffer(&mut self, m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { // FIXME: make this generic WRT NUM_STREAMS [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/mux.rs:583:20 [INFO] [stderr] | [INFO] [stderr] 583 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 583 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/mux.rs:620:21 [INFO] [stderr] | [INFO] [stderr] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes; NUM_STREAMS] { [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 620 | fn write_buffer(&mut self, _m8: &mut AllocU8) -> [WritableBytes<'_>; NUM_STREAMS] { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/threading.rs:327:20 [INFO] [stderr] | [INFO] [stderr] 327 | fn read_buffer(&mut self) -> [ReadableBytes; NUM_STREAMS] { [INFO] [stderr] | ^^^^^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 327 | fn read_buffer(&mut self) -> [ReadableBytes<'_>; NUM_STREAMS] { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/ffi/alloc_util.rs:213:5 [INFO] [stderr] | [INFO] [stderr] 213 | Box::from_raw(slice_ref); // free on drop [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 213 | let _ = Box::from_raw(slice_ref); // free on drop [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used [INFO] [stderr] --> src/ffi/compressor.rs:176:17 [INFO] [stderr] | [INFO] [stderr] 176 | / core::mem::replace(self, [INFO] [stderr] 177 | | CompressorState::InternalCompressor( [INFO] [stderr] 178 | | InternalCompressorFactory::new( [INFO] [stderr] 179 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stderr] ... | [INFO] [stderr] 182 | | opts, [INFO] [stderr] 183 | | ()))); [INFO] [stderr] | |________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 176 | let _ = core::mem::replace(self, [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used [INFO] [stderr] --> src/ffi/compressor.rs:186:17 [INFO] [stderr] | [INFO] [stderr] 186 | / core::mem::replace(self, [INFO] [stderr] 187 | | CompressorState::BrotliCompressor( [INFO] [stderr] 188 | | BrotliFactory::new( [INFO] [stderr] 189 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stderr] ... | [INFO] [stderr] 209 | | SubclassableAllocator::::new(allocators.clone()), [INFO] [stderr] 210 | | )))); [INFO] [stderr] | |_______________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 186 | let _ = core::mem::replace(self, [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/test_ans.rs:215:17 [INFO] [stderr] | [INFO] [stderr] 215 | let mut q = e.get_internal_buffer_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/test_ans.rs:237:13 [INFO] [stderr] | [INFO] [stderr] 237 | let mut q = e.get_internal_buffer_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/test_ans.rs:317:17 [INFO] [stderr] | [INFO] [stderr] 317 | let mut q = d.get_internal_buffer_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/test_ans.rs:338:13 [INFO] [stderr] | [INFO] [stderr] 338 | let mut q = d.get_internal_buffer_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/test_ans.rs:380:17 [INFO] [stderr] | [INFO] [stderr] 380 | let mut q = e.get_internal_buffer_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/test_ans.rs:443:17 [INFO] [stderr] | [INFO] [stderr] 443 | let mut q = d.get_internal_buffer_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: field `read_offset` is never read [INFO] [stderr] --> src/writer.rs:294:13 [INFO] [stderr] | [INFO] [stderr] 292 | pub struct UnlimitedBuffer { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] 293 | pub data: Vec, [INFO] [stderr] 294 | pub read_offset: usize, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stderr] --> src/probability/numeric.rs:78:23 [INFO] [stderr] | [INFO] [stderr] 78 | for n in nums.into_iter() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this changes meaning in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stderr] | [INFO] [stderr] 78 - for n in nums.into_iter() { [INFO] [stderr] 78 + for n in nums.iter() { [INFO] [stderr] | [INFO] [stderr] help: or remove `.into_iter()` to iterate by value [INFO] [stderr] | [INFO] [stderr] 78 - for n in nums.into_iter() { [INFO] [stderr] 78 + for n in nums { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stderr] --> src/probability/numeric.rs:79:29 [INFO] [stderr] | [INFO] [stderr] 79 | for d in denoms.into_iter() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this changes meaning in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stderr] | [INFO] [stderr] 79 - for d in denoms.into_iter() { [INFO] [stderr] 79 + for d in denoms.iter() { [INFO] [stderr] | [INFO] [stderr] help: or remove `.into_iter()` to iterate by value [INFO] [stderr] | [INFO] [stderr] 79 - for d in denoms.into_iter() { [INFO] [stderr] 79 + for d in denoms { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/reader.rs:401:32 [INFO] [stderr] | [INFO] [stderr] 401 | panic!(e) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 401 | panic!("{}", e) [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 401 - panic!(e) [INFO] [stderr] 401 + std::panic::panic_any(e) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/reader.rs:431:38 [INFO] [stderr] | [INFO] [stderr] 431 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 431 | Err(e) => panic!("{}", e), [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 431 - Err(e) => panic!(e), [INFO] [stderr] 431 + Err(e) => std::panic::panic_any(e), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/writer.rs:364:38 [INFO] [stderr] | [INFO] [stderr] 364 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 364 | Err(e) => panic!("{}", e), [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 364 - Err(e) => panic!(e), [INFO] [stderr] 364 + Err(e) => std::panic::panic_any(e), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/writer.rs:374:25 [INFO] [stderr] | [INFO] [stderr] 374 | panic!(e); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 374 | panic!("{}", e); [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 374 - panic!(e); [INFO] [stderr] 374 + std::panic::panic_any(e); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/writer.rs:399:38 [INFO] [stderr] | [INFO] [stderr] 399 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 399 | Err(e) => panic!("{}", e), [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 399 - Err(e) => panic!(e), [INFO] [stderr] 399 + Err(e) => std::panic::panic_any(e), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/writer.rs:409:25 [INFO] [stderr] | [INFO] [stderr] 409 | panic!(e); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 409 | panic!("{}", e); [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 409 - panic!(e); [INFO] [stderr] 409 + std::panic::panic_any(e); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `divans` (lib) generated 152 warnings (run `cargo fix --lib -p divans` to apply 99 suggestions) [INFO] [stderr] warning: `divans` (lib test) generated 165 warnings (150 duplicates) (run `cargo fix --lib -p divans --tests` to apply 14 suggestions) [INFO] [stderr] warning: unexpected `cfg` condition value: `no-stdlib-rlib` [INFO] [stderr] --> src/bin/divans.rs:17:7 [INFO] [stderr] | [INFO] [stderr] 17 | #[cfg(feature="no-stdlib-rlib")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `no-stdlib-rlib` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `no-stdlib-rlib` [INFO] [stderr] --> src/bin/divans.rs:19:11 [INFO] [stderr] | [INFO] [stderr] 19 | #[cfg(not(feature="no-stdlib-rlib"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `no-stdlib-rlib` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bin/integration_test.rs:71:3 [INFO] [stderr] | [INFO] [stderr] 71 | try!(super::recode(&mut brotli_file, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `inplace-new` [INFO] [stderr] --> src/bin/util.rs:49:7 [INFO] [stderr] | [INFO] [stderr] 49 | #[cfg(feature="inplace-new")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `inplace-new` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `inplace-new` [INFO] [stderr] --> src/bin/util.rs:73:11 [INFO] [stderr] | [INFO] [stderr] 73 | #[cfg(not(feature="inplace-new"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `avoid-divide`, `avx2`, `benchmark`, `billing`, `blend`, `debug_entropy`, `external-literal-probability`, `findspeed`, `no-inline`, `no-stdlib`, `no-stdlib-rust-binding`, `portable-simd`, `safe`, `simd`, `threadlog`, and `uncached_frequentist` [INFO] [stderr] = help: consider adding `inplace-new` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bin/divans.rs:455:20 [INFO] [stderr] | [INFO] [stderr] 455 | let data = try!(util::literal_slice_to_vec(&s.as_bytes()[command_vec[0].len() + command_vec[1].len() + 2..])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bin/divans.rs:457:24 [INFO] [stderr] | [INFO] [stderr] 457 | let prob = try!(util::hex_slice_to_vec(command_vec[3].as_bytes())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bin/divans.rs:659:21 [INFO] [stderr] | [INFO] [stderr] 659 | try!(recode_cmd_buffer(&mut state, ibuffer.split_at(i_read_index).0, w, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bin/divans.rs:671:23 [INFO] [stderr] | [INFO] [stderr] 671 | match try!(command_parse(&line)) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bin/divans.rs:956:31 [INFO] [stderr] | [INFO] [stderr] 956 | window_size = try!(window_parse(&line)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/bin/divans.rs:1013:46 [INFO] [stderr] | [INFO] [stderr] 1013 | let mut obuffer = vec![0u8; buffer_size];; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bin/divans.rs:718:63 [INFO] [stderr] | [INFO] [stderr] 718 | ... free_state: &mut Fn(Compressor)->ItemVecAllocator) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 718 | free_state: &mut dyn Fn(Compressor)->ItemVecAllocator) -> io::Result<()> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bin/divans.rs:103:32 [INFO] [stderr] | [INFO] [stderr] 103 | fn cause(&self) -> Option<&error::Error> {None} [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 103 | fn cause(&self) -> Option<&dyn error::Error> {None} [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:169:43 [INFO] [stderr] | [INFO] [stderr] 169 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:329:47 [INFO] [stderr] | [INFO] [stderr] 329 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:350:60 [INFO] [stderr] | [INFO] [stderr] 350 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:366:47 [INFO] [stderr] | [INFO] [stderr] 366 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:377:47 [INFO] [stderr] | [INFO] [stderr] 377 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:393:47 [INFO] [stderr] | [INFO] [stderr] 393 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:409:47 [INFO] [stderr] | [INFO] [stderr] 409 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:416:47 [INFO] [stderr] | [INFO] [stderr] 416 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:425:55 [INFO] [stderr] | [INFO] [stderr] 425 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/bin/divans.rs:449:51 [INFO] [stderr] | [INFO] [stderr] 449 | ... msg.description())); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TestContextMixingPureAverage` is never constructed [INFO] [stderr] --> src/bin/benchmark.rs:145:8 [INFO] [stderr] | [INFO] [stderr] 145 | struct TestContextMixingPureAverage{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TestContextMixingPureAverage` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct `TestSimple` is never constructed [INFO] [stderr] --> src/bin/benchmark.rs:153:8 [INFO] [stderr] | [INFO] [stderr] 153 | struct TestSimple{ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TestSimple` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/bin/integration_test.rs:222:24 [INFO] [stderr] | [INFO] [stderr] 222 | need => panic!(need), [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `DivansOutputResult` [INFO] [stderr] | [INFO] [stderr] 222 | need => panic!("{:?}", need), [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 222 - need => panic!(need), [INFO] [stderr] 222 + need => std::panic::panic_any(need), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> examples/util_prior_stream_cost.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | let mut prior_val: Vec = if let Some(_) = line.find(",") { [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> examples/util_prior_stream_cost.rs:65:21 [INFO] [stderr] | [INFO] [stderr] 65 | let mut prior_stream = &mut sub_streams.entry(prior).or_insert(vec::Vec::::new()); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> examples/compress.rs:42:28 [INFO] [stderr] | [INFO] [stderr] 42 | panic!(e); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 42 | panic!("{}", e); [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 42 - panic!(e); [INFO] [stderr] 42 + std::panic::panic_any(e); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> examples/compress.rs:51:40 [INFO] [stderr] | [INFO] [stderr] 51 | ... panic!(e) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 51 | panic!("{}", e) [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 51 - panic!(e) [INFO] [stderr] 51 + std::panic::panic_any(e) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stdout] [INFO] [stderr] --> examples/compress.rs:57:42 [INFO] [stdout] running 63 tests [INFO] [stderr] | [INFO] [stderr] 57 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 57 | Err(e) => panic!("{}", e), [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 57 - Err(e) => panic!(e), [INFO] [stderr] 57 + Err(e) => std::panic::panic_any(e), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> examples/decompress.rs:25:28 [INFO] [stderr] | [INFO] [stderr] 25 | panic!(e); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 25 | panic!("{}", e); [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 25 - panic!(e); [INFO] [stderr] 25 + std::panic::panic_any(e); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> examples/decompress.rs:32:42 [INFO] [stderr] | [INFO] [stderr] 32 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to `Display` the message [INFO] [stderr] | [INFO] [stderr] 32 | Err(e) => panic!("{}", e), [INFO] [stderr] | +++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 32 - Err(e) => panic!(e), [INFO] [stderr] 32 + Err(e) => std::panic::panic_any(e), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `divans` (bin "divans" test) generated 26 warnings (run `cargo fix --bin "divans" --tests` to apply 3 suggestions) [INFO] [stderr] warning: `divans` (example "util_prior_stream_cost") generated 2 warnings (run `cargo fix --example "util_prior_stream_cost"` to apply 2 suggestions) [INFO] [stderr] warning: `divans` (example "compress") generated 3 warnings (run `cargo fix --example "compress"` to apply 3 suggestions) [INFO] [stderr] warning: `divans` (example "decompress") generated 2 warnings (run `cargo fix --example "decompress"` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/divans-b58cce9e24b97392) [INFO] [stdout] test cmd_to_raw::test::test_copy_far ... ok [INFO] [stdout] test cmd_to_raw::test::test_copy_near_overlap ... ok [INFO] [stdout] test cmd_to_raw::test::test_insert_huge ... ok [INFO] [stdout] test cmd_to_raw::test::test_copy_big_overlap ... ok [INFO] [stdout] test codec::crc32::test::test_crc32c_empty ... ok [INFO] [stdout] test arithmetic_coder::test::test_get_nibble ... ok [INFO] [stdout] test codec::crc32::test::test_crc32c_numeric_half ... ok [INFO] [stdout] test priors::test::test_billing_types ... ok [INFO] [stdout] test codec::crc32::test::test_crc32c_qbf_half ... ok [INFO] [stdout] test codec::crc32::test::test_crc32c_numeric ... ok [INFO] [stdout] test cmd_to_raw::test::test_ring_buffer_dict ... ok [INFO] [stdout] test codec::crc32::test::test_crc32c_qbf ... ok [INFO] [stdout] test alloc_util::test::test_non_reuse ... ok [INFO] [stdout] test cmd_to_raw::test::test_insert_medium ... ok [INFO] [stdout] test alloc_util::test::test_reuse ... ok [INFO] [stdout] test priors::test::test_get ... ok [INFO] [stdout] test arithmetic_coder::test::test_put_nibble ... ok [INFO] [stdout] test priors::test::test_macro_product ... ok [INFO] [stdout] test priors::test::test_get_tuple ... ok [INFO] [stdout] test probability::blend_cdf::test::test_blend_lut ... ok [INFO] [stdout] test priors::test::test_num_prior ... ok [INFO] [stdout] test priors::test::test_num_dimensions ... ok [INFO] [stdout] test priors::test::test_macro_sum_product_cdr ... ok [INFO] [stdout] test priors::test::test_macro_count_expr ... ok [INFO] [stdout] test probability::blend_cdf::test::test_sym_to_start_and_freq ... ok [INFO] [stdout] test probability::opt_frequentist_cdf::test::test_cdf_opt_eq_baseline ... ok [INFO] [stdout] test probability::opt_frequentist_cdf::test::test_sym_to_start_and_freq ... ok [INFO] [stdout] test probability::numeric::test::test_divide ... ok [INFO] [stdout] test probability::frequentist_cdf::test::test_sym_to_start_and_freq ... ok [INFO] [stdout] test probability::interface::test::test_u8_to_speed ... ok [INFO] [stderr] encoded size: 2928 [INFO] [stderr] effeciency: 1.00311013336588 [INFO] [stdout] test test_ans::entropy16_big_trait_test ... ok [INFO] [stderr] done! [INFO] [stdout] test test_ans::entropy16_lite_trait_test ... ok [INFO] [stderr] encoded size: 24 [INFO] [stderr] effeciency: 2.1054007256147593 [INFO] [stderr] done! [INFO] [stderr] encoded size: 2928 [INFO] [stderr] effeciency: 0.9933084853811626 [INFO] [stderr] done! [INFO] [stdout] test test_ans::entropy16_trait_test ... ok [INFO] [stdout] test probability::frequentist_cdf::test::test_nonzero_pdf ... ok [INFO] [stdout] test probability::opt_frequentist_cdf::test::test_nonzero_pdf ... ok [INFO] [stdout] test test_mux::test_interleaved_mux ... ok [INFO] [stdout] test priors::test::test_get_bad_tuple_dimensionality - should panic ... ok [INFO] [stdout] test priors::test::test_get_bad_tuple_index - should panic ... ok [INFO] [stdout] test test_mux::test_nano_mux ... ok [INFO] [stdout] test test_mux::test_med_mux ... ok [INFO] [stdout] test test_mux::test_real_mux ... ok [INFO] [stdout] test test_mux::test_short_mux ... ok [INFO] [stdout] test test_mux::test_tiny_mux ... ok [INFO] [stdout] test test_mux::unit_test_decode_mux ... ok [INFO] [stdout] test test_mux::test_sc3_mux ... ok [INFO] [stdout] test test_mux::test_long_mux ... ok [INFO] [stdout] test test_mux::test_3meg_mux ... ok [INFO] [stdout] test test_mux::test_balance_mux ... ok [INFO] [stdout] test probability::frequentist_cdf::test::test_cdf_offset_to_sym_start_and_freq ... ok [INFO] [stdout] test probability::opt_frequentist_cdf::test::test_cdf_offset_to_sym_start_and_freq ... ok [INFO] [stdout] test probability::blend_cdf::test::test_cdf_offset_to_sym_start_and_freq ... ok [INFO] [stdout] test probability::frequentist_cdf::test::test_stationary_probability ... ok [INFO] [stdout] test probability::blend_cdf::test::test_nonzero_pdf ... ok [INFO] [stdout] test probability::opt_frequentist_cdf::test::test_stationary_probability ... ok [INFO] [stdout] test probability::blend_cdf::test::test_stationary_probability ... ok [INFO] [stdout] test reader::test::test_experimental_reader_compressor_on_alice_full ... ok [INFO] [stdout] test writer::test::test_hybrid_writer_compressor_on_alice_full ... ok [INFO] [stdout] test reader::test::test_hybrid_reader_compressor_on_alice_full ... ok [INFO] [stdout] test writer::test::test_experimental_writer_compressor_on_alice_full ... ok [INFO] [stdout] test reader::test::test_hybrid_reader_compressor_on_unicode_full ... ok [INFO] [stdout] test reader::test::test_hybrid_reader_compressor_on_alice_small_buffer ... ok [INFO] [stdout] test writer::test::test_hybrid_writer_compressor_on_unicode_full ... ok [INFO] [stdout] test writer::test::test_hybrid_writer_compressor_on_alice_small_buffer ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 63 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.31s [INFO] [stdout] [INFO] [stderr] Running unittests src/bin/divans.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/divans-d5f074d2334684b0) [INFO] [stdout] [INFO] [stdout] running 19 tests [INFO] [stdout] test integration_test::test_e2e_64xp ... ok [INFO] [stdout] test integration_test::test_e2e_empty_just_flush ... ok [INFO] [stdout] test integration_test::test_e2e_ones_tinybuf ... ok [INFO] [stdout] test integration_test::test_ends_with_truncated_dictionary ... ok [INFO] [stdout] test integration_test::test_e2e_empty_br_tinybuf ... ok [INFO] [stdout] test integration_test::test_e2e_empty_br ... ok [INFO] [stdout] test integration_test::test_e2e_32xx ... ok [INFO] [stdout] test integration_test::test_alice29 ... ok [INFO] [stdout] test integration_test::test_e2e_empty ... ok [INFO] [stdout] test integration_test::test_e2e_empty_tinybuf ... ok [INFO] [stdout] test integration_test::test_asyoulik ... ok [INFO] [stdout] test integration_test::test_e2e_262145_at ... ok [INFO] [stdout] test benchmark::test_raw_adaptive_literal_stream ... ok [INFO] [stdout] test integration_test::test_random_then_unicode ... ok [INFO] [stdout] test benchmark::test_raw_literal_stream ... ok [INFO] [stdout] test integration_test::test_e2e_smallbuf_without_priors ... ok [INFO] [stdout] test integration_test::test_e2e_alice ... ok [INFO] [stdout] test benchmark::test_raw_ir_literal_stream ... ok [INFO] [stdout] test integration_test::test_e2e_tinybuf ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 7.85s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "7851f98b5b09ea5b582c2683322033d3517223a7068a4b9a96aec7b3bb7c4601", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7851f98b5b09ea5b582c2683322033d3517223a7068a4b9a96aec7b3bb7c4601", kill_on_drop: false }` [INFO] [stdout] 7851f98b5b09ea5b582c2683322033d3517223a7068a4b9a96aec7b3bb7c4601