[INFO] fetching crate brotli 3.3.0...
[INFO] testing brotli-3.3.0 against beta-2020-10-09 for beta-1.48-1
[INFO] extracting crate brotli 3.3.0 into /workspace/builds/worker-7/source
[INFO] validating manifest of crates.io crate brotli 3.3.0 on toolchain beta-2020-10-09
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate brotli 3.3.0
[INFO] finished tweaking crates.io crate brotli 3.3.0
[INFO] tweaked toml for crates.io crate brotli 3.3.0 written to /workspace/builds/worker-7/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] acbf78b979220dfb4e9a40ecd7df2d2f7b2ae2eb002e13fea909ebe54260a396
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "acbf78b979220dfb4e9a40ecd7df2d2f7b2ae2eb002e13fea909ebe54260a396", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "acbf78b979220dfb4e9a40ecd7df2d2f7b2ae2eb002e13fea909ebe54260a396", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "acbf78b979220dfb4e9a40ecd7df2d2f7b2ae2eb002e13fea909ebe54260a396", kill_on_drop: false }`
[INFO] [stdout] acbf78b979220dfb4e9a40ecd7df2d2f7b2ae2eb002e13fea909ebe54260a396
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fae96502690284ff030f9392f15e034c2afd1a4c3470462b5a6e9e10d6be791d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "fae96502690284ff030f9392f15e034c2afd1a4c3470462b5a6e9e10d6be791d", kill_on_drop: false }`
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.1
[INFO] [stderr]    Compiling alloc-stdlib v0.2.1
[INFO] [stderr]    Compiling brotli-decompressor v2.3.1
[INFO] [stderr]    Compiling brotli v3.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/enc/input_pair.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[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/enc/input_pair.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/enc/threading.rs:27:48
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type LowLevelThreadError = std::boxed::Box<any::Any + Send + 'static>;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn any::Any + Send + 'static`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:101:3
[INFO] [stdout]     |
[INFO] [stdout] 101 |   #[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/enc/histogram.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:105:3
[INFO] [stdout]     |
[INFO] [stdout] 105 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:641:3
[INFO] [stdout]     |
[INFO] [stdout] 641 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:643:3
[INFO] [stdout]     |
[INFO] [stdout] 643 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:645:3
[INFO] [stdout]     |
[INFO] [stdout] 645 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:647:3
[INFO] [stdout]     |
[INFO] [stdout] 647 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:649:3
[INFO] [stdout]     |
[INFO] [stdout] 649 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:651:5
[INFO] [stdout]     |
[INFO] [stdout] 651 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:653:5
[INFO] [stdout]     |
[INFO] [stdout] 653 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:655:5
[INFO] [stdout]     |
[INFO] [stdout] 655 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:657:5
[INFO] [stdout]     |
[INFO] [stdout] 657 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:659:5
[INFO] [stdout]     |
[INFO] [stdout] 659 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:661:3
[INFO] [stdout]     |
[INFO] [stdout] 661 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: attribute should be applied to a function or static
[INFO] [stdout]    --> src/enc/parameters.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout] 1   |   #[no_mangle]
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 4   | / pub enum BrotliEncoderParameter {
[INFO] [stdout] 5   | |   BROTLI_PARAM_MODE = 0,
[INFO] [stdout] 6   | |   BROTLI_PARAM_QUALITY = 1,
[INFO] [stdout] 7   | |   BROTLI_PARAM_LGWIN = 2,
[INFO] [stdout] ...   |
[INFO] [stdout] 259 | |   UNUSED255=255,
[INFO] [stdout] 260 | | }
[INFO] [stdout]     | |_- not a function 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 function or static
[INFO] [stdout]   --> src/concat/mod.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout] 5  |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 6  | / pub enum BroCatliResult {
[INFO] [stdout] 7  | |   Success = 0,
[INFO] [stdout] 8  | |   NeedsMoreInput = 1,
[INFO] [stdout] 9  | |   NeedsMoreOutput = 2,
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | |   BrotliFileNotCraftedForConcatenation = 127,
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]  --> src/ffi/compressor.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 9 | use core;
[INFO] [stdout]   | --------- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 27 | / pub enum BrotliEncoderOperation {
[INFO] [stdout] 28 | |   BROTLI_OPERATION_PROCESS = 0,
[INFO] [stdout] 29 | |   BROTLI_OPERATION_FLUSH = 1,
[INFO] [stdout] 30 | |   BROTLI_OPERATION_FINISH = 2,
[INFO] [stdout] 31 | |   BROTLI_OPERATION_EMIT_METADATA = 3,
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 36 | / pub enum BrotliEncoderMode {
[INFO] [stdout] 37 | |   BROTLI_MODE_GENERIC = 0,
[INFO] [stdout] 38 | |   BROTLI_MODE_TEXT = 1,
[INFO] [stdout] 39 | |   BROTLI_MODE_FONT = 2,
[INFO] [stdout] ...  |
[INFO] [stdout] 43 | |   BROTLI_MODE_FORCE_SIGNED_PRIOR = 6,
[INFO] [stdout] 44 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 48 | / pub struct BrotliEncoderState {
[INFO] [stdout] 49 | |   pub custom_allocator: CAllocator,
[INFO] [stdout] 50 | |   pub compressor: BrotliEncoderStateStruct<BrotliSubclassableAllocator>,
[INFO] [stdout] 51 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/broccoli.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 16 | / pub struct BroccoliState {
[INFO] [stdout] 17 | |     more_data: *mut c_void,
[INFO] [stdout] 18 | |     current_data: [u8;120],
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]  --> src/ffi/multicompress/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 8 | use core;
[INFO] [stdout]   | --------- not a function 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 function or static
[INFO] [stdout]    --> src/ffi/multicompress/mod.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 |   #[no_mangle]
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] 193 |   #[repr(C)]
[INFO] [stdout] 194 | / pub struct BrotliEncoderWorkPool {
[INFO] [stdout] 195 | |   custom_allocator: CAllocator,
[INFO] [stdout] 196 | |   work_pool: enc::WorkerPool<enc::CompressionThreadResult<BrotliSubclassableAllocator>,
[INFO] [stdout] 197 | |                              UnionHasher<BrotliSubclassableAllocator>,
[INFO] [stdout] 198 | |                              BrotliSubclassableAllocator,
[INFO] [stdout] 199 | |                              (SliceRef<'static>, BrotliEncoderParams)>,
[INFO] [stdout] 200 | | }
[INFO] [stdout]     | |_- not a function 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: variable does not need to be mutable
[INFO] [stdout]    --> src/enc/bit_cost.rs:200:11
[INFO] [stdout]     |
[INFO] [stdout] 200 |       let mut cur = &mut depth_histo[j];
[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/enc/histogram.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |     let mut h0val = &mut h0[i];
[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/enc/block_splitter.rs:320:11
[INFO] [stdout]     |
[INFO] [stdout] 320 |       let mut block_id_ptr = &mut block_id[byte_ix];
[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/enc/find_stride.rs:559:14
[INFO] [stdout]     |
[INFO] [stdout] 559 |         for (mut obe, be) in old_bit_entropy.iter_mut().zip(self.pop.iter_mut()) {
[INFO] [stdout]     |              ----^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:43:3
[INFO] [stdout]    |
[INFO] [stdout] 43 |   core::mem::replace(commands, &mut remainder[1..]);
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:57:3
[INFO] [stdout]    |
[INFO] [stdout] 57 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:141:3
[INFO] [stdout]     |
[INFO] [stdout] 141 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |         core::mem::replace(literals, &mut new_literals[(insert as usize)..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:275:11
[INFO] [stdout]     |
[INFO] [stdout] 275 |           core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/encode.rs:761:3
[INFO] [stdout]     |
[INFO] [stdout] 761 |   core::mem::replace(&mut (*rb).data_mo, new_data);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]     --> src/enc/encode.rs:1539:5
[INFO] [stdout]      |
[INFO] [stdout] 1539 |     core::mem::replace(m8, s_orig.m8);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: 46 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/util.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             try!(write!(f, "{:02X}", byte));
[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/util.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 26.37s
[INFO] running `Command { std: "docker" "inspect" "fae96502690284ff030f9392f15e034c2afd1a4c3470462b5a6e9e10d6be791d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fae96502690284ff030f9392f15e034c2afd1a4c3470462b5a6e9e10d6be791d", kill_on_drop: false }`
[INFO] [stdout] fae96502690284ff030f9392f15e034c2afd1a4c3470462b5a6e9e10d6be791d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e912c332c2916a4935c11c9bba9f7b02f82970d3b7a4a24a92bfc3bc22982430
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "e912c332c2916a4935c11c9bba9f7b02f82970d3b7a4a24a92bfc3bc22982430", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/enc/input_pair.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[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/enc/input_pair.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/enc/threading.rs:27:48
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type LowLevelThreadError = std::boxed::Box<any::Any + Send + 'static>;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn any::Any + Send + 'static`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:101:3
[INFO] [stdout]     |
[INFO] [stdout] 101 |   #[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/enc/histogram.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:105:3
[INFO] [stdout]     |
[INFO] [stdout] 105 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:641:3
[INFO] [stdout]     |
[INFO] [stdout] 641 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:643:3
[INFO] [stdout]     |
[INFO] [stdout] 643 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:645:3
[INFO] [stdout]     |
[INFO] [stdout] 645 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:647:3
[INFO] [stdout]     |
[INFO] [stdout] 647 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:649:3
[INFO] [stdout]     |
[INFO] [stdout] 649 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:651:5
[INFO] [stdout]     |
[INFO] [stdout] 651 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:653:5
[INFO] [stdout]     |
[INFO] [stdout] 653 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:655:5
[INFO] [stdout]     |
[INFO] [stdout] 655 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:657:5
[INFO] [stdout]     |
[INFO] [stdout] 657 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:659:5
[INFO] [stdout]     |
[INFO] [stdout] 659 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:661:3
[INFO] [stdout]     |
[INFO] [stdout] 661 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: attribute should be applied to a function or static
[INFO] [stdout]    --> src/enc/parameters.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout] 1   |   #[no_mangle]
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 4   | / pub enum BrotliEncoderParameter {
[INFO] [stdout] 5   | |   BROTLI_PARAM_MODE = 0,
[INFO] [stdout] 6   | |   BROTLI_PARAM_QUALITY = 1,
[INFO] [stdout] 7   | |   BROTLI_PARAM_LGWIN = 2,
[INFO] [stdout] ...   |
[INFO] [stdout] 259 | |   UNUSED255=255,
[INFO] [stdout] 260 | | }
[INFO] [stdout]     | |_- not a function 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 function or static
[INFO] [stdout]   --> src/concat/mod.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout] 5  |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 6  | / pub enum BroCatliResult {
[INFO] [stdout] 7  | |   Success = 0,
[INFO] [stdout] 8  | |   NeedsMoreInput = 1,
[INFO] [stdout] 9  | |   NeedsMoreOutput = 2,
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | |   BrotliFileNotCraftedForConcatenation = 127,
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]  --> src/ffi/compressor.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 9 | use core;
[INFO] [stdout]   | --------- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 27 | / pub enum BrotliEncoderOperation {
[INFO] [stdout] 28 | |   BROTLI_OPERATION_PROCESS = 0,
[INFO] [stdout] 29 | |   BROTLI_OPERATION_FLUSH = 1,
[INFO] [stdout] 30 | |   BROTLI_OPERATION_FINISH = 2,
[INFO] [stdout] 31 | |   BROTLI_OPERATION_EMIT_METADATA = 3,
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 36 | / pub enum BrotliEncoderMode {
[INFO] [stdout] 37 | |   BROTLI_MODE_GENERIC = 0,
[INFO] [stdout] 38 | |   BROTLI_MODE_TEXT = 1,
[INFO] [stdout] 39 | |   BROTLI_MODE_FONT = 2,
[INFO] [stdout] ...  |
[INFO] [stdout] 43 | |   BROTLI_MODE_FORCE_SIGNED_PRIOR = 6,
[INFO] [stdout] 44 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 48 | / pub struct BrotliEncoderState {
[INFO] [stdout] 49 | |   pub custom_allocator: CAllocator,
[INFO] [stdout] 50 | |   pub compressor: BrotliEncoderStateStruct<BrotliSubclassableAllocator>,
[INFO] [stdout] 51 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/broccoli.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 16 | / pub struct BroccoliState {
[INFO] [stdout] 17 | |     more_data: *mut c_void,
[INFO] [stdout] 18 | |     current_data: [u8;120],
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]  --> src/ffi/multicompress/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 8 | use core;
[INFO] [stdout]   | --------- not a function 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 function or static
[INFO] [stdout]    --> src/ffi/multicompress/mod.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 |   #[no_mangle]
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] 193 |   #[repr(C)]
[INFO] [stdout] 194 | / pub struct BrotliEncoderWorkPool {
[INFO] [stdout] 195 | |   custom_allocator: CAllocator,
[INFO] [stdout] 196 | |   work_pool: enc::WorkerPool<enc::CompressionThreadResult<BrotliSubclassableAllocator>,
[INFO] [stdout] 197 | |                              UnionHasher<BrotliSubclassableAllocator>,
[INFO] [stdout] 198 | |                              BrotliSubclassableAllocator,
[INFO] [stdout] 199 | |                              (SliceRef<'static>, BrotliEncoderParams)>,
[INFO] [stdout] 200 | | }
[INFO] [stdout]     | |_- not a function 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: variable does not need to be mutable
[INFO] [stdout]    --> src/enc/bit_cost.rs:200:11
[INFO] [stdout]     |
[INFO] [stdout] 200 |       let mut cur = &mut depth_histo[j];
[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/enc/histogram.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |     let mut h0val = &mut h0[i];
[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/enc/block_splitter.rs:320:11
[INFO] [stdout]     |
[INFO] [stdout] 320 |       let mut block_id_ptr = &mut block_id[byte_ix];
[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/enc/find_stride.rs:559:14
[INFO] [stdout]     |
[INFO] [stdout] 559 |         for (mut obe, be) in old_bit_entropy.iter_mut().zip(self.pop.iter_mut()) {
[INFO] [stdout]     |              ----^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:43:3
[INFO] [stdout]    |
[INFO] [stdout] 43 |   core::mem::replace(commands, &mut remainder[1..]);
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:57:3
[INFO] [stdout]    |
[INFO] [stdout] 57 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling brotli v3.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:141:3
[INFO] [stdout]     |
[INFO] [stdout] 141 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |         core::mem::replace(literals, &mut new_literals[(insert as usize)..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:275:11
[INFO] [stdout]     |
[INFO] [stdout] 275 |           core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/encode.rs:761:3
[INFO] [stdout]     |
[INFO] [stdout] 761 |   core::mem::replace(&mut (*rb).data_mo, new_data);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]     --> src/enc/encode.rs:1539:5
[INFO] [stdout]      |
[INFO] [stdout] 1539 |     core::mem::replace(m8, s_orig.m8);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: 46 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/util.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             try!(write!(f, "{:02X}", byte));
[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/util.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_custom_dict.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut input = brotli;
[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: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/enc/input_pair.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[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/enc/input_pair.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/enc/threading.rs:27:48
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type LowLevelThreadError = std::boxed::Box<any::Any + Send + 'static>;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn any::Any + Send + 'static`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:101:3
[INFO] [stdout]     |
[INFO] [stdout] 101 |   #[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/enc/histogram.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:105:3
[INFO] [stdout]     |
[INFO] [stdout] 105 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/histogram.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:641:3
[INFO] [stdout]     |
[INFO] [stdout] 641 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:643:3
[INFO] [stdout]     |
[INFO] [stdout] 643 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:645:3
[INFO] [stdout]     |
[INFO] [stdout] 645 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:647:3
[INFO] [stdout]     |
[INFO] [stdout] 647 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:649:3
[INFO] [stdout]     |
[INFO] [stdout] 649 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:651:5
[INFO] [stdout]     |
[INFO] [stdout] 651 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:653:5
[INFO] [stdout]     |
[INFO] [stdout] 653 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:655:5
[INFO] [stdout]     |
[INFO] [stdout] 655 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:657:5
[INFO] [stdout]     |
[INFO] [stdout] 657 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:659:5
[INFO] [stdout]     |
[INFO] [stdout] 659 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/enc/backward_references/mod.rs:661:3
[INFO] [stdout]     |
[INFO] [stdout] 661 |   #[inline(always)]
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: attribute should be applied to a function or static
[INFO] [stdout]    --> src/enc/parameters.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout] 1   |   #[no_mangle]
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 4   | / pub enum BrotliEncoderParameter {
[INFO] [stdout] 5   | |   BROTLI_PARAM_MODE = 0,
[INFO] [stdout] 6   | |   BROTLI_PARAM_QUALITY = 1,
[INFO] [stdout] 7   | |   BROTLI_PARAM_LGWIN = 2,
[INFO] [stdout] ...   |
[INFO] [stdout] 259 | |   UNUSED255=255,
[INFO] [stdout] 260 | | }
[INFO] [stdout]     | |_- not a function 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 function or static
[INFO] [stdout]   --> src/concat/mod.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout] 5  |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 6  | / pub enum BroCatliResult {
[INFO] [stdout] 7  | |   Success = 0,
[INFO] [stdout] 8  | |   NeedsMoreInput = 1,
[INFO] [stdout] 9  | |   NeedsMoreOutput = 2,
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | |   BrotliFileNotCraftedForConcatenation = 127,
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]  --> src/ffi/compressor.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 9 | use core;
[INFO] [stdout]   | --------- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 27 | / pub enum BrotliEncoderOperation {
[INFO] [stdout] 28 | |   BROTLI_OPERATION_PROCESS = 0,
[INFO] [stdout] 29 | |   BROTLI_OPERATION_FLUSH = 1,
[INFO] [stdout] 30 | |   BROTLI_OPERATION_FINISH = 2,
[INFO] [stdout] 31 | |   BROTLI_OPERATION_EMIT_METADATA = 3,
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 36 | / pub enum BrotliEncoderMode {
[INFO] [stdout] 37 | |   BROTLI_MODE_GENERIC = 0,
[INFO] [stdout] 38 | |   BROTLI_MODE_TEXT = 1,
[INFO] [stdout] 39 | |   BROTLI_MODE_FONT = 2,
[INFO] [stdout] ...  |
[INFO] [stdout] 43 | |   BROTLI_MODE_FORCE_SIGNED_PRIOR = 6,
[INFO] [stdout] 44 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/compressor.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 48 | / pub struct BrotliEncoderState {
[INFO] [stdout] 49 | |   pub custom_allocator: CAllocator,
[INFO] [stdout] 50 | |   pub compressor: BrotliEncoderStateStruct<BrotliSubclassableAllocator>,
[INFO] [stdout] 51 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]   --> src/ffi/broccoli.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 |   #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 16 | / pub struct BroccoliState {
[INFO] [stdout] 17 | |     more_data: *mut c_void,
[INFO] [stdout] 18 | |     current_data: [u8;120],
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- not a function 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 function or static
[INFO] [stdout]  --> src/ffi/multicompress/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 8 | use core;
[INFO] [stdout]   | --------- not a function 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 function or static
[INFO] [stdout]    --> src/ffi/multicompress/mod.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 |   #[no_mangle]
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] 193 |   #[repr(C)]
[INFO] [stdout] 194 | / pub struct BrotliEncoderWorkPool {
[INFO] [stdout] 195 | |   custom_allocator: CAllocator,
[INFO] [stdout] 196 | |   work_pool: enc::WorkerPool<enc::CompressionThreadResult<BrotliSubclassableAllocator>,
[INFO] [stdout] 197 | |                              UnionHasher<BrotliSubclassableAllocator>,
[INFO] [stdout] 198 | |                              BrotliSubclassableAllocator,
[INFO] [stdout] 199 | |                              (SliceRef<'static>, BrotliEncoderParams)>,
[INFO] [stdout] 200 | | }
[INFO] [stdout]     | |_- not a function 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: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/enc/bit_cost.rs:200:11
[INFO] [stdout]     |
[INFO] [stdout] 200 |       let mut cur = &mut depth_histo[j];
[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/enc/histogram.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |     let mut h0val = &mut h0[i];
[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/enc/block_splitter.rs:320:11
[INFO] [stdout]     |
[INFO] [stdout] 320 |       let mut block_id_ptr = &mut block_id[byte_ix];
[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/enc/find_stride.rs:559:14
[INFO] [stdout]     |
[INFO] [stdout] 559 |         for (mut obe, be) in old_bit_entropy.iter_mut().zip(self.pop.iter_mut()) {
[INFO] [stdout]     |              ----^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:43:3
[INFO] [stdout]    |
[INFO] [stdout] 43 |   core::mem::replace(commands, &mut remainder[1..]);
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:57:3
[INFO] [stdout]    |
[INFO] [stdout] 57 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]   --> src/enc/compress_fragment_two_pass.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:141:3
[INFO] [stdout]     |
[INFO] [stdout] 141 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |         core::mem::replace(literals, &mut new_literals[(insert as usize)..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/compress_fragment_two_pass.rs:275:11
[INFO] [stdout]     |
[INFO] [stdout] 275 |           core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/enc/encode.rs:761:3
[INFO] [stdout]     |
[INFO] [stdout] 761 |   core::mem::replace(&mut (*rb).data_mo, new_data);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]     --> src/enc/encode.rs:1539:5
[INFO] [stdout]      |
[INFO] [stdout] 1539 |     core::mem::replace(m8, s_orig.m8);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: 46 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 32.06s
[INFO] running `Command { std: "docker" "inspect" "e912c332c2916a4935c11c9bba9f7b02f82970d3b7a4a24a92bfc3bc22982430", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e912c332c2916a4935c11c9bba9f7b02f82970d3b7a4a24a92bfc3bc22982430", kill_on_drop: false }`
[INFO] [stdout] e912c332c2916a4935c11c9bba9f7b02f82970d3b7a4a24a92bfc3bc22982430
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1d261f0feb8f57119b893276fbdd86c46ab0fbd9a7ba3ee21f2038d0399663f5
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "1d261f0feb8f57119b893276fbdd86c46ab0fbd9a7ba3ee21f2038d0399663f5", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/enc/input_pair.rs:93:13
[INFO] [stderr]    |
[INFO] [stderr] 93 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stderr]    |             ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/enc/input_pair.rs:96:13
[INFO] [stderr]    |
[INFO] [stderr] 96 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/enc/threading.rs:27:48
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type LowLevelThreadError = std::boxed::Box<any::Any + Send + 'static>;
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn any::Any + Send + 'static`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/histogram.rs:101:3
[INFO] [stderr]     |
[INFO] [stderr] 101 |   #[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/enc/histogram.rs:103:3
[INFO] [stderr]     |
[INFO] [stderr] 103 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/histogram.rs:105:3
[INFO] [stderr]     |
[INFO] [stderr] 105 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/histogram.rs:107:3
[INFO] [stderr]     |
[INFO] [stderr] 107 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:641:3
[INFO] [stderr]     |
[INFO] [stderr] 641 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:643:3
[INFO] [stderr]     |
[INFO] [stderr] 643 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:645:3
[INFO] [stderr]     |
[INFO] [stderr] 645 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:647:3
[INFO] [stderr]     |
[INFO] [stderr] 647 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:649:3
[INFO] [stderr]     |
[INFO] [stderr] 649 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:651:5
[INFO] [stderr]     |
[INFO] [stderr] 651 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:653:5
[INFO] [stderr]     |
[INFO] [stderr] 653 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:655:5
[INFO] [stderr]     |
[INFO] [stderr] 655 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:657:5
[INFO] [stderr]     |
[INFO] [stderr] 657 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:659:5
[INFO] [stderr]     |
[INFO] [stderr] 659 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/enc/input_pair.rs:93:13
[INFO] [stderr]    |
[INFO] [stderr] 93 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stderr]    |             ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/enc/input_pair.rs:96:13
[INFO] [stderr]    |
[INFO] [stderr] 96 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/enc/threading.rs:27:48
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type LowLevelThreadError = std::boxed::Box<any::Any + Send + 'static>;
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn any::Any + Send + 'static`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:661:3
[INFO] [stderr]     |
[INFO] [stderr] 661 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]    --> src/enc/parameters.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   |   #[no_mangle]
[INFO] [stderr]     |   ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 4   | / pub enum BrotliEncoderParameter {
[INFO] [stderr] 5   | |   BROTLI_PARAM_MODE = 0,
[INFO] [stderr] 6   | |   BROTLI_PARAM_QUALITY = 1,
[INFO] [stderr] 7   | |   BROTLI_PARAM_LGWIN = 2,
[INFO] [stderr] ...   |
[INFO] [stderr] 259 | |   UNUSED255=255,
[INFO] [stderr] 260 | | }
[INFO] [stderr]     | |_- not a function 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: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/histogram.rs:101:3
[INFO] [stderr]     |
[INFO] [stderr] 101 |   #[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/enc/histogram.rs:103:3
[INFO] [stderr]     |
[INFO] [stderr] 103 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/histogram.rs:105:3
[INFO] [stderr]     |
[INFO] [stderr] 105 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/histogram.rs:107:3
[INFO] [stderr]     |
[INFO] [stderr] 107 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:641:3
[INFO] [stderr]     |
[INFO] [stderr] 641 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:643:3
[INFO] [stderr]     |
[INFO] [stderr] 643 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:645:3
[INFO] [stderr]     |
[INFO] [stderr] 645 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:647:3
[INFO] [stderr]     |
[INFO] [stderr] 647 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]   --> src/concat/mod.rs:5:1
[INFO] [stderr]    |
[INFO] [stderr] 5  |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 6  | / pub enum BroCatliResult {
[INFO] [stderr] 7  | |   Success = 0,
[INFO] [stderr] 8  | |   NeedsMoreInput = 1,
[INFO] [stderr] 9  | |   NeedsMoreOutput = 2,
[INFO] [stderr] ...  |
[INFO] [stderr] 13 | |   BrotliFileNotCraftedForConcatenation = 127,
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | |_- not a function 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 function or static
[INFO] [stderr]  --> src/ffi/compressor.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | #[no_mangle]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 9 | use core;
[INFO] [stderr]   | --------- not a function 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: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:649:3
[INFO] [stderr]     |
[INFO] [stderr] 649 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:651:5
[INFO] [stderr]     |
[INFO] [stderr] 651 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:653:5
[INFO] [stderr]     |
[INFO] [stderr] 653 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:655:5
[INFO] [stderr]     |
[INFO] [stderr] 655 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]   --> src/ffi/compressor.rs:26:1
[INFO] [stderr]    |
[INFO] [stderr] 26 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 27 | / pub enum BrotliEncoderOperation {
[INFO] [stderr] 28 | |   BROTLI_OPERATION_PROCESS = 0,
[INFO] [stderr] 29 | |   BROTLI_OPERATION_FLUSH = 1,
[INFO] [stderr] 30 | |   BROTLI_OPERATION_FINISH = 2,
[INFO] [stderr] 31 | |   BROTLI_OPERATION_EMIT_METADATA = 3,
[INFO] [stderr] 32 | | }
[INFO] [stderr]    | |_- not a function 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 function or static
[INFO] [stderr]   --> src/ffi/compressor.rs:35:1
[INFO] [stderr]    |
[INFO] [stderr] 35 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 36 | / pub enum BrotliEncoderMode {
[INFO] [stderr] 37 | |   BROTLI_MODE_GENERIC = 0,
[INFO] [stderr] 38 | |   BROTLI_MODE_TEXT = 1,
[INFO] [stderr] 39 | |   BROTLI_MODE_FONT = 2,
[INFO] [stderr] ...  |
[INFO] [stderr] 43 | |   BROTLI_MODE_FORCE_SIGNED_PRIOR = 6,
[INFO] [stderr] 44 | | }
[INFO] [stderr]    | |_- not a function 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: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:657:5
[INFO] [stderr]     |
[INFO] [stderr] 657 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:659:5
[INFO] [stderr]     |
[INFO] [stderr] 659 |     #[inline(always)]
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/enc/backward_references/mod.rs:661:3
[INFO] [stderr]     |
[INFO] [stderr] 661 |   #[inline(always)]
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]    --> src/enc/parameters.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   |   #[no_mangle]
[INFO] [stderr]     |   ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 4   | / pub enum BrotliEncoderParameter {
[INFO] [stderr] 5   | |   BROTLI_PARAM_MODE = 0,
[INFO] [stderr] 6   | |   BROTLI_PARAM_QUALITY = 1,
[INFO] [stderr] 7   | |   BROTLI_PARAM_LGWIN = 2,
[INFO] [stderr] ...   |
[INFO] [stderr] 259 | |   UNUSED255=255,
[INFO] [stderr] 260 | | }
[INFO] [stderr]     | |_- not a function 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 function or static
[INFO] [stderr]   --> src/ffi/compressor.rs:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 48 | / pub struct BrotliEncoderState {
[INFO] [stderr] 49 | |   pub custom_allocator: CAllocator,
[INFO] [stderr] 50 | |   pub compressor: BrotliEncoderStateStruct<BrotliSubclassableAllocator>,
[INFO] [stderr] 51 | | }
[INFO] [stderr]    | |_- not a function 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 function or static
[INFO] [stderr]   --> src/ffi/broccoli.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 16 | / pub struct BroccoliState {
[INFO] [stderr] 17 | |     more_data: *mut c_void,
[INFO] [stderr] 18 | |     current_data: [u8;120],
[INFO] [stderr] 19 | | }
[INFO] [stderr]    | |_- not a function 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 function or static
[INFO] [stderr]  --> src/ffi/multicompress/mod.rs:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | #[no_mangle]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 8 | use core;
[INFO] [stderr]   | --------- not a function 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 function or static
[INFO] [stderr]    --> src/ffi/multicompress/mod.rs:192:1
[INFO] [stderr]     |
[INFO] [stderr] 192 |   #[no_mangle]
[INFO] [stderr]     |   ^^^^^^^^^^^^
[INFO] [stderr] 193 |   #[repr(C)]
[INFO] [stderr] 194 | / pub struct BrotliEncoderWorkPool {
[INFO] [stderr] 195 | |   custom_allocator: CAllocator,
[INFO] [stderr] 196 | |   work_pool: enc::WorkerPool<enc::CompressionThreadResult<BrotliSubclassableAllocator>,
[INFO] [stderr] 197 | |                              UnionHasher<BrotliSubclassableAllocator>,
[INFO] [stderr] 198 | |                              BrotliSubclassableAllocator,
[INFO] [stderr] 199 | |                              (SliceRef<'static>, BrotliEncoderParams)>,
[INFO] [stderr] 200 | | }
[INFO] [stderr]     | |_- not a function 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 function or static
[INFO] [stderr]   --> src/concat/mod.rs:5:1
[INFO] [stderr]    |
[INFO] [stderr] 5  |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 6  | / pub enum BroCatliResult {
[INFO] [stderr] 7  | |   Success = 0,
[INFO] [stderr] 8  | |   NeedsMoreInput = 1,
[INFO] [stderr] 9  | |   NeedsMoreOutput = 2,
[INFO] [stderr] ...  |
[INFO] [stderr] 13 | |   BrotliFileNotCraftedForConcatenation = 127,
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | |_- not a function 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: variable does not need to be mutable
[INFO] [stderr]    --> src/enc/bit_cost.rs:200:11
[INFO] [stderr]     |
[INFO] [stderr] 200 |       let mut cur = &mut depth_histo[j];
[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/enc/histogram.rs:441:9
[INFO] [stderr]     |
[INFO] [stderr] 441 |     let mut h0val = &mut h0[i];
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]  --> src/ffi/compressor.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | #[no_mangle]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 9 | use core;
[INFO] [stderr]   | --------- not a function 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 function or static
[INFO] [stderr]   --> src/ffi/compressor.rs:26:1
[INFO] [stderr]    |
[INFO] [stderr] 26 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 27 | / pub enum BrotliEncoderOperation {
[INFO] [stderr] 28 | |   BROTLI_OPERATION_PROCESS = 0,
[INFO] [stderr] 29 | |   BROTLI_OPERATION_FLUSH = 1,
[INFO] [stderr] 30 | |   BROTLI_OPERATION_FINISH = 2,
[INFO] [stderr] 31 | |   BROTLI_OPERATION_EMIT_METADATA = 3,
[INFO] [stderr] 32 | | }
[INFO] [stderr]    | |_- not a function 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: variable does not need to be mutable
[INFO] [stderr]    --> src/enc/block_splitter.rs:320:11
[INFO] [stderr]     |
[INFO] [stderr] 320 |       let mut block_id_ptr = &mut block_id[byte_ix];
[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/enc/find_stride.rs:559:14
[INFO] [stderr]     |
[INFO] [stderr] 559 |         for (mut obe, be) in old_bit_entropy.iter_mut().zip(self.pop.iter_mut()) {
[INFO] [stderr]     |              ----^^^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:43:3
[INFO] [stderr]    |
[INFO] [stderr] 43 |   core::mem::replace(commands, &mut remainder[1..]);
[INFO] [stderr]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]    = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]   --> src/ffi/compressor.rs:35:1
[INFO] [stderr]    |
[INFO] [stderr] 35 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 36 | / pub enum BrotliEncoderMode {
[INFO] [stderr] 37 | |   BROTLI_MODE_GENERIC = 0,
[INFO] [stderr] 38 | |   BROTLI_MODE_TEXT = 1,
[INFO] [stderr] 39 | |   BROTLI_MODE_FONT = 2,
[INFO] [stderr] ...  |
[INFO] [stderr] 43 | |   BROTLI_MODE_FORCE_SIGNED_PRIOR = 6,
[INFO] [stderr] 44 | | }
[INFO] [stderr]    | |_- not a function 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 function or static
[INFO] [stderr]   --> src/ffi/compressor.rs:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 48 | / pub struct BrotliEncoderState {
[INFO] [stderr] 49 | |   pub custom_allocator: CAllocator,
[INFO] [stderr] 50 | |   pub compressor: BrotliEncoderStateStruct<BrotliSubclassableAllocator>,
[INFO] [stderr] 51 | | }
[INFO] [stderr]    | |_- not a function 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: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:57:3
[INFO] [stderr]    |
[INFO] [stderr] 57 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 65 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:75:5
[INFO] [stderr]    |
[INFO] [stderr] 75 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]   --> src/ffi/broccoli.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 |   #[no_mangle]
[INFO] [stderr]    |   ^^^^^^^^^^^^
[INFO] [stderr] 16 | / pub struct BroccoliState {
[INFO] [stderr] 17 | |     more_data: *mut c_void,
[INFO] [stderr] 18 | |     current_data: [u8;120],
[INFO] [stderr] 19 | | }
[INFO] [stderr]    | |_- not a function 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 function or static
[INFO] [stderr]  --> src/ffi/multicompress/mod.rs:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | #[no_mangle]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 8 | use core;
[INFO] [stderr]   | --------- not a function 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: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: attribute should be applied to a function or static
[INFO] [stderr]    --> src/ffi/multicompress/mod.rs:192:1
[INFO] [stderr]     |
[INFO] [stderr] 192 |   #[no_mangle]
[INFO] [stderr]     |   ^^^^^^^^^^^^
[INFO] [stderr] 193 |   #[repr(C)]
[INFO] [stderr] 194 | / pub struct BrotliEncoderWorkPool {
[INFO] [stderr] 195 | |   custom_allocator: CAllocator,
[INFO] [stderr] 196 | |   work_pool: enc::WorkerPool<enc::CompressionThreadResult<BrotliSubclassableAllocator>,
[INFO] [stderr] 197 | |                              UnionHasher<BrotliSubclassableAllocator>,
[INFO] [stderr] 198 | |                              BrotliSubclassableAllocator,
[INFO] [stderr] 199 | |                              (SliceRef<'static>, BrotliEncoderParams)>,
[INFO] [stderr] 200 | | }
[INFO] [stderr]     | |_- not a function 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: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 86 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 95 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/enc/bit_cost.rs:200:11
[INFO] [stderr]     |
[INFO] [stderr] 200 |       let mut cur = &mut depth_histo[j];
[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/enc/histogram.rs:441:9
[INFO] [stderr]     |
[INFO] [stderr] 441 |     let mut h0val = &mut h0[i];
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:104:5
[INFO] [stderr]     |
[INFO] [stderr] 104 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:107:5
[INFO] [stderr]     |
[INFO] [stderr] 107 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/enc/block_splitter.rs:320:11
[INFO] [stderr]     |
[INFO] [stderr] 320 |       let mut block_id_ptr = &mut block_id[byte_ix];
[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/enc/find_stride.rs:559:14
[INFO] [stderr]     |
[INFO] [stderr] 559 |         for (mut obe, be) in old_bit_entropy.iter_mut().zip(self.pop.iter_mut()) {
[INFO] [stderr]     |              ----^^^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:43:3
[INFO] [stderr]    |
[INFO] [stderr] 43 |   core::mem::replace(commands, &mut remainder[1..]);
[INFO] [stderr]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]    = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:141:3
[INFO] [stderr]     |
[INFO] [stderr] 141 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:271:9
[INFO] [stderr]     |
[INFO] [stderr] 271 |         core::mem::replace(literals, &mut new_literals[(insert as usize)..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:275:11
[INFO] [stderr]     |
[INFO] [stderr] 275 |           core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:57:3
[INFO] [stderr]    |
[INFO] [stderr] 57 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 65 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:75:5
[INFO] [stderr]    |
[INFO] [stderr] 75 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/encode.rs:761:3
[INFO] [stderr]     |
[INFO] [stderr] 761 |   core::mem::replace(&mut (*rb).data_mo, new_data);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]     --> src/enc/encode.rs:1539:5
[INFO] [stderr]      |
[INFO] [stderr] 1539 |     core::mem::replace(m8, s_orig.m8);
[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] 
[INFO] [stderr] warning: 46 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 86 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 95 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]   --> src/enc/compress_fragment_two_pass.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:104:5
[INFO] [stderr]     |
[INFO] [stderr] 104 |     core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:107:5
[INFO] [stderr]     |
[INFO] [stderr] 107 |     core::mem::replace(commands, &mut remainder2[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:141:3
[INFO] [stderr]     |
[INFO] [stderr] 141 |   core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:271:9
[INFO] [stderr]     |
[INFO] [stderr] 271 |         core::mem::replace(literals, &mut new_literals[(insert as usize)..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/compress_fragment_two_pass.rs:275:11
[INFO] [stderr]     |
[INFO] [stderr] 275 |           core::mem::replace(commands, &mut remainder[1..]);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]    --> src/enc/encode.rs:761:3
[INFO] [stderr]     |
[INFO] [stderr] 761 |   core::mem::replace(&mut (*rb).data_mo, new_data);
[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] 
[INFO] [stderr] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stderr]     --> src/enc/encode.rs:1539:5
[INFO] [stderr]      |
[INFO] [stderr] 1539 |     core::mem::replace(m8, s_orig.m8);
[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] 
[INFO] [stderr] warning: 46 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/util.rs:35:13
[INFO] [stderr]    |
[INFO] [stderr] 35 |             try!(write!(f, "{:02X}", byte));
[INFO] [stderr]    |             ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/util.rs:86:13
[INFO] [stderr]    |
[INFO] [stderr] 86 |             try!( fmtr.write_fmt(format_args!("{:02x}", item)));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bin/test_custom_dict.rs:116:13
[INFO] [stderr]     |
[INFO] [stderr] 116 |         let mut input = brotli;
[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: 3 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/brotli-6a582c364a846fc9
[INFO] [stdout] 
[INFO] [stdout] running 35 tests
[INFO] [stdout] test concat::test::test_serialization ... ok
[INFO] [stdout] test concat::test::test_deserialization_any_written ... ok
[INFO] [stdout] test concat::test::test_deserialization ... ok
[INFO] [stdout] test enc::brotli_bit_stream::test::test_encode_base_128 ... ok
[INFO] [stdout] test concat::test::test_cat_empty_stream ... ok
[INFO] [stdout] test enc::command::test::test_command_return_distance_index_offset ... ok
[INFO] [stdout] test enc::interface::test::test_u8_to_speed ... ok
[INFO] [stdout] test enc::test::test_roundtrip_empty ... ok
[INFO] [stdout] test enc::test::test_roundtrip_first_58_bytes_alice ... ok
[INFO] [stdout] test enc::test::test_roundtrip_first_2_bytes_alice ... ok
[INFO] [stdout] test enc::test::test_roundtrip_64x ... ok
[INFO] [stdout] test enc::test::test_roundtrip_quickfox ... ok
[INFO] [stdout] test enc::test::test_roundtrip_10x10y ... ok
[INFO] [stdout] test enc::util::test::log2floor_non_zero_works ... ok
[INFO] [stdout] test enc::util::test::fast_log2_works ... ok
[INFO] [stdout] test enc::test::test_roundtrip_monkey ... ok
[INFO] [stdout] test ffi::multicompress::test::test_compress_empty_multi_raw ... ok
[INFO] [stdout] test ffi::multicompress::test::test_compress_empty_multi_catable ... ok
[INFO] [stdout] test enc::test::test_roundtrip_aaabaaaa ... ok
[INFO] [stdout] test ffi::multicompress::test::test_compress_null_multi_raw ... ok
[INFO] [stdout] test enc::test::test_roundtrip_backward65536 ... ok
[INFO] [stdout] test ffi::multicompress::test::test_compress_empty_workpool ... ok
[INFO] [stdout] test ffi::multicompress::test::test_compress_workpool ... ok
[INFO] [stdout] test ffi::multicompress::test::test_compress_empty_multi_raw_one_thread ... ok
[INFO] [stdout] test enc::test::test_roundtrip_ukkonooa ... ok
[INFO] [stdout] test enc::test::test_roundtrip_x ... ok
[INFO] [stdout] test enc::test::test_roundtrip_compressed ... ok
[INFO] [stdout] test enc::test::test_roundtrip_quickfox_repeated ... ok
[INFO] [stdout] test enc::test::test_roundtrip_compressed_repeated ... ok
[INFO] [stdout] test enc::backward_references::test::test_bulk_store_range_pow2 ... ok
[INFO] [stdout] test enc::test::test_roundtrip_asyoulik ... ok
[INFO] [stdout] test enc::static_dict::test::test_find_match_length ... ok
[INFO] [stdout] test enc::backward_references::test::test_bulk_store_range ... ok
[INFO] [stdout] test enc::backward_references::test::test_bulk_store_range_off_spec ... ok
[INFO] [stdout] test enc::test::test_roundtrip_asyoulik9_5 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/brotli-7039853fe332a094
[INFO] [stdout] 
[INFO] [stdout] running 93 tests
[INFO] [stdout] test integration_tests::test_64x ... ok
[INFO] [stdout] test integration_tests::test_empty10 ... ok
[INFO] [stdout] test integration_tests::test_empty11 ... ok
[INFO] [stdout] test integration_tests::test_empty ... ok
[INFO] [stdout] test integration_tests::test_empty0 ... ok
[INFO] [stdout] test integration_tests::test_empty1 ... ok
[INFO] [stdout] test integration_tests::test_10x_10y_one_out_byte ... ok
[INFO] [stderr] 1 Iterations; Time 0.000754815
[INFO] [stdout] test integration_tests::test_empty16 ... ok
[INFO] [stderr] 1 Iterations; Time 0.000779516
[INFO] [stdout] test integration_tests::test_10x_10y_byte_by_byte ... ok
[INFO] [stdout] test integration_tests::test_empty12 ... ok
[INFO] [stdout] test integration_tests::test_10x_10y ... ok
[INFO] [stdout] test integration_tests::test_empty2 ... ok
[INFO] [stdout] test integration_tests::test_empty3 ... ok
[INFO] [stdout] test integration_tests::test_empty5 ... ok
[INFO] [stdout] test integration_tests::test_empty6 ... ok
[INFO] [stdout] test integration_tests::test_empty7 ... ok
[INFO] [stdout] test integration_tests::test_empty8 ... ok
[INFO] [stdout] test integration_tests::test_empty9 ... ok
[INFO] [stdout] test integration_tests::test_backward65536 ... ok
[INFO] [stderr] 1 Iterations; Time 0.003500772
[INFO] [stdout] test integration_tests::test_compressed_file ... ok
[INFO] [stdout] test integration_tests::test_empty14 ... ok
[INFO] [stdout] test integration_tests::test_error_returned ... ok
[INFO] [stdout] test integration_tests::test_empty15 ... ok
[INFO] [stdout] test integration_tests::test_empty13 ... ok
[INFO] [stdout] test integration_tests::test_empty4 ... ok
[INFO] [stdout] test integration_tests::test_compressed_repeated ... ok
[INFO] [stdout] test integration_tests::test_negative_hypothesis ... ok
[INFO] [stdout] test integration_tests::test_as_you_like_it ... ok
[INFO] [stdout] test integration_tests::test_alice29 ... ok
[INFO] [stdout] test integration_tests::test_empty17 ... ok
[INFO] [stdout] test integration_tests::test_empty18 ... ok
[INFO] [stderr] 1 Iterations; Time 6.442255972
[INFO] [stdout] test integration_tests::test_alice1 ... ok
[INFO] [stdout] test integration_tests::test_reader_64x ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_2 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_3 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_4 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_5 ... ok
[INFO] [stdout] test integration_tests::test_roundtrip_64x ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_0 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_1 ... ok
[INFO] [stdout] test integration_tests::test_reader_quickfox_repeated ... ok
[INFO] [stdout] test integration_tests::test_ukkonooa ... ok
[INFO] [stdout] test integration_tests::test_writer_64x ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_6 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_7 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_8 ... ok
[INFO] [stdout] test integration_tests::test_reader_alice ... ok
[INFO] [stdout] test integration_tests::test_writer_as_you_lik_into_inner ... ok
[INFO] [stdout] test integration_tests::test_writer_quickfox_repeated ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_9 ... ok
[INFO] [stdout] test test_broccoli::test_append_then_empty_works ... ok
[INFO] [stdout] test integration_tests::test_reader_as_you_lik ... ok
[INFO] [stdout] test integration_tests::test_writer_as_you_lik ... ok
[INFO] [stdout] test test_broccoli::test_one_byte_before_works ... ok
[INFO] [stdout] test test_broccoli::test_one_byte_works ... ok
[INFO] [stdout] test test_broccoli::test_appendonly_twice_fails ... ok
[INFO] [stdout] test test_broccoli::test_two_byte_before_works ... ok
[INFO] [stdout] test test_broccoli::test_append_then_cat_works ... ok
[INFO] [stdout] test test_broccoli::test_two_byte_works ... ok
[INFO] [stdout] test test_broccoli::test_empty_then_cat_works ... ok
[INFO] [stdout] test integration_tests::test_1024k ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_0b1 ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_0b5 ... ok
[INFO] [stdout] test integration_tests::test_writer_alice ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_1b1 ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_1b5 ... ok
[INFO] [stdout] test integration_tests::test_roundtrip_quickfox_repeated ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_1 ... ok
[INFO] [stdout] test test_custom_dict::test_custom_wrong_dict_fails_but_doesnt_disrupt_compression_strategy ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_3 ... ok
[INFO] [stdout] test test_threading::thread_spawn_per_job_split_compression_test_0b1 ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_2 ... ok
[INFO] [stdout] test test_threading::thread_spawn_per_job_split_compression_test_0b3 ... ok
[INFO] [stdout] test test_threading::thread_spawn_per_job_split_compression_test_1b1 ... ok
[INFO] [stdout] test test_threading::thread_spawn_per_job_split_compression_test_1b3 ... ok
[INFO] [stdout] test integration_tests::test_alice29_10 ... ok
[INFO] [stdout] test tests::test_10x_10y ... ok
[INFO] [stdout] test test_threading::thread_spawn_per_job_split_compression_test_1 ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_5 ... ok
[INFO] [stdout] test integration_tests::test_reader_random_then_unicode ... ok
[INFO] [stdout] test test_threading::thread_spawn_per_job_split_compression_test_3 ... ok
[INFO] [stdout] test tests::test_alice ... ok
[INFO] [stdout] test integration_tests::test_writer_random_then_unicode ... ok
[INFO] [stdout] test test_custom_dict::test_custom_dict_for_multithreading ... ok
[INFO] [stdout] test test_threading::multi_threaded_split_compression_test_4 ... ok
[INFO] [stdout] test test_custom_dict::test_custom_wrong_dict_fails ... ok
[INFO] [stdout] test test_custom_dict::test_custom_dict ... ok
[INFO] [stdout] test integration_tests::test_roundtrip_alice29 ... ok
[INFO] [stdout] test integration_tests::test_alice29_11 ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_9x5 ... ok
[INFO] [stdout] test test_broccoli::test_concat ... ok
[INFO] [stdout] test integration_tests::test_roundtrip_as_you_lik ... ok
[INFO] [stdout] test integration_tests::test_random_then_unicode_9_5 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 93 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/catbrotli-3bea51fa6c197016
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests brotli
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1d261f0feb8f57119b893276fbdd86c46ab0fbd9a7ba3ee21f2038d0399663f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1d261f0feb8f57119b893276fbdd86c46ab0fbd9a7ba3ee21f2038d0399663f5", kill_on_drop: false }`
[INFO] [stdout] 1d261f0feb8f57119b893276fbdd86c46ab0fbd9a7ba3ee21f2038d0399663f5
