[INFO] cloning repository https://github.com/hdoordt/lzjd-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hdoordt/lzjd-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhdoordt%2Flzjd-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhdoordt%2Flzjd-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f7d18657edd1fec3ddf93ce2990d6672104f8d42
[INFO] checking hdoordt/lzjd-rs against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhdoordt%2Flzjd-rs" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/hdoordt/lzjd-rs
[INFO] finished tweaking git repo https://github.com/hdoordt/lzjd-rs
[INFO] tweaked toml for git repo https://github.com/hdoordt/lzjd-rs written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hdoordt/lzjd-rs on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hdoordt/lzjd-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b
[INFO] running `Command { std: "docker" "start" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.59
[INFO] [stderr]    Compiling autocfg v0.1.4
[INFO] [stderr]     Checking cfg-if v0.1.9
[INFO] [stderr]    Compiling serde v1.0.94
[INFO] [stderr]    Compiling syn v0.15.39
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]    Compiling cc v1.0.37
[INFO] [stderr]    Compiling memchr v2.2.1
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling rayon-core v1.5.0
[INFO] [stderr]    Compiling ryu v1.0.0
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]    Compiling build_const v0.2.1
[INFO] [stderr]    Compiling failure_derive v0.1.5
[INFO] [stderr]     Checking rustc-demangle v0.1.15
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking crossbeam-utils v0.6.5
[INFO] [stderr]    Compiling crc v1.8.1
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling bincode v1.1.4
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]     Checking walkdir v2.2.8
[INFO] [stderr]     Checking regex-automata v0.1.7
[INFO] [stderr]     Checking seahash v3.0.6
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking base64 v0.10.1
[INFO] [stderr]     Checking criterion-plot v0.3.1
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking crossbeam-epoch v0.7.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking num_cpus v1.10.1
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking atty v0.2.12
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]    Compiling backtrace-sys v0.1.30
[INFO] [stderr]     Checking crossbeam-deque v0.6.3
[INFO] [stderr]    Compiling fasthash-sys v0.3.2
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]     Checking csv-core v0.1.6
[INFO] [stderr]     Checking xoroshiro128 v0.3.0
[INFO] [stderr]     Checking rayon v1.1.0
[INFO] [stderr]     Checking backtrace v0.3.32
[INFO] [stderr]    Compiling synstructure v0.10.2
[INFO] [stderr]    Compiling serde_derive v1.0.94
[INFO] [stderr]     Checking bstr v0.2.1
[INFO] [stderr]     Checking serde_json v1.0.40
[INFO] [stderr]     Checking failure v0.1.5
[INFO] [stderr]     Checking csv v1.1.1
[INFO] [stderr]     Checking tinytemplate v1.0.2
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stderr]     Checking fasthash v0.4.0
[INFO] [stderr]     Checking lzjd v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 188 |     use std::f64::EPSILON;
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:261:19
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 < EPSILON
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:265:19
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 < EPSILON
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:269:19
[INFO] [stdout]     |
[INFO] [stdout] 269 |                 < EPSILON
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:273:19
[INFO] [stdout]     |
[INFO] [stdout] 273 |                 < EPSILON
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:277:19
[INFO] [stdout]     |
[INFO] [stdout] 277 |                 < EPSILON
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lz_dict.rs:281:19
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 < EPSILON
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lib.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use std::f64::EPSILON;
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lib.rs:140:26
[INFO] [stdout]     |
[INFO] [stdout] 140 |             dist.abs() < EPSILON, // dist(a, b) == 0
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lib.rs:146:33
[INFO] [stdout]     |
[INFO] [stdout] 146 |             (1. - dist).abs() < EPSILON, // dist(a, c) == 1
[INFO] [stdout]     |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lib.rs:152:55
[INFO] [stdout]     |
[INFO] [stdout] 152 |             (0.409_090_909_090_909_06 - dist).abs() < EPSILON, // dist(a, d) == 0.409_090_909_090_909_06
[INFO] [stdout]     |                                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/lib.rs:157:67
[INFO] [stdout]     |
[INFO] [stdout] 157 |             (dict_a.dist(&dict_d) - dict_d.dist(&dict_a)).abs() < EPSILON, // dist(a,d) == dist(d,a)
[INFO] [stdout]     |                                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_LZJDError`
[INFO] [stdout] 70 | pub enum LZJDError {
[INFO] [stdout]    |          --------- `LZJDError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_LZJDError`
[INFO] [stdout] 70 | pub enum LZJDError {
[INFO] [stdout]    |          --------- `LZJDError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_LZJDError`
[INFO] [stdout] 70 | pub enum LZJDError {
[INFO] [stdout]    |          --------- `LZJDError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_LZJDError`
[INFO] [stdout] 70 | pub enum LZJDError {
[INFO] [stdout]    |          --------- `LZJDError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CRC32Hasher` is never constructed
[INFO] [stdout]  --> src/crc32.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct CRC32Hasher {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CRC32Hasher` is never constructed
[INFO] [stdout]  --> src/crc32.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct CRC32Hasher {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/crc32.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CRC32Hasher {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 14 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/crc32.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CRC32Hasher {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 14 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CRC32BuildHasher` is never constructed
[INFO] [stdout]   --> src/crc32.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct CRC32BuildHasher;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CRC32BuildHasher` is never constructed
[INFO] [stdout]   --> src/crc32.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct CRC32BuildHasher;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 28 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 28 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 28 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 28 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous wide pointer comparison, the comparison includes metadata which may not be expected
[INFO] [stdout]    --> src/main.rs:250:16
[INFO] [stdout]     |
[INFO] [stdout] 250 |     let same = dicts_a as *const _ == dicts_b as *const _;
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ambiguous_wide_pointer_comparisons)]` on by default
[INFO] [stdout] help: use `std::ptr::addr_eq` or untyped pointers to only compare their addresses
[INFO] [stdout]     |
[INFO] [stdout] 250 -     let same = dicts_a as *const _ == dicts_b as *const _;
[INFO] [stdout] 250 +     let same = std::ptr::addr_eq(dicts_a as *const _, dicts_b as *const _);
[INFO] [stdout]     |
[INFO] [stdout] help: use explicit `std::ptr::eq` method to compare metadata and addresses
[INFO] [stdout]     |
[INFO] [stdout] 250 -     let same = dicts_a as *const _ == dicts_b as *const _;
[INFO] [stdout] 250 +     let same = std::ptr::eq(dicts_a as *const _, dicts_b as *const _);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous wide pointer comparison, the comparison includes metadata which may not be expected
[INFO] [stdout]    --> src/main.rs:250:16
[INFO] [stdout]     |
[INFO] [stdout] 250 |     let same = dicts_a as *const _ == dicts_b as *const _;
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ambiguous_wide_pointer_comparisons)]` on by default
[INFO] [stdout] help: use `std::ptr::addr_eq` or untyped pointers to only compare their addresses
[INFO] [stdout]     |
[INFO] [stdout] 250 -     let same = dicts_a as *const _ == dicts_b as *const _;
[INFO] [stdout] 250 +     let same = std::ptr::addr_eq(dicts_a as *const _, dicts_b as *const _);
[INFO] [stdout]     |
[INFO] [stdout] help: use explicit `std::ptr::eq` method to compare metadata and addresses
[INFO] [stdout]     |
[INFO] [stdout] 250 -     let same = dicts_a as *const _ == dicts_b as *const _;
[INFO] [stdout] 250 +     let same = std::ptr::eq(dicts_a as *const _, dicts_b as *const _);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.56s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11, rand_core v0.4.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b", kill_on_drop: false }`
[INFO] [stdout] f3328da509f51c05abe929e3d2672b27cc732ada09a8a75ac61e85a6b41ffd6b
