[INFO] fetching crate candidate 0.0.5...
[INFO] checking candidate-0.0.5 against master#80399064afa4a2cd153f30d02c25f7ea0383ed65 for opaque-soundness-fix
[INFO] extracting crate candidate 0.0.5 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate candidate 0.0.5 on toolchain 80399064afa4a2cd153f30d02c25f7ea0383ed65
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate candidate 0.0.5
[INFO] finished tweaking crates.io crate candidate 0.0.5
[INFO] tweaked toml for crates.io crate candidate 0.0.5 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b83e2c7300619cd9a799d96e4ceea430535ea7c29f33e20d0713bdd16f5d8e1b
[INFO] running `Command { std: "docker" "start" "-a" "b83e2c7300619cd9a799d96e4ceea430535ea7c29f33e20d0713bdd16f5d8e1b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b83e2c7300619cd9a799d96e4ceea430535ea7c29f33e20d0713bdd16f5d8e1b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b83e2c7300619cd9a799d96e4ceea430535ea7c29f33e20d0713bdd16f5d8e1b", kill_on_drop: false }`
[INFO] [stdout] b83e2c7300619cd9a799d96e4ceea430535ea7c29f33e20d0713bdd16f5d8e1b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d39cc1d687c3ef9cc25cc1e00e055dcdbc8db985e8dcc4738437c9a8ba9e91e
[INFO] running `Command { std: "docker" "start" "-a" "2d39cc1d687c3ef9cc25cc1e00e055dcdbc8db985e8dcc4738437c9a8ba9e91e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling cc v1.0.90
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling rand_pcg v0.2.1
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]     Checking itoa v1.0.10
[INFO] [stderr]     Checking ryu v1.0.17
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]     Checking regex-syntax v0.8.2
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking plotters-backend v0.3.5
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]    Compiling syn v2.0.53
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking plotters-svg v0.3.5
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking half v1.8.3
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking rayon v1.9.0
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]     Checking oorandom v11.1.3
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking criterion-plot v0.4.5
[INFO] [stderr]     Checking plotters v0.3.5
[INFO] [stderr]     Checking csv v1.3.0
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling candidate v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: 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: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.3.6
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryFrom` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                             ^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ExactSizeIterator` is imported redundantly
[INFO] [stdout]   --> src/movegen/movegen.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::iter::ExactSizeIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `ExactSizeIterator` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::piece_type::*`
[INFO] [stdout]  --> src/movegen/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::piece_type::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/game.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_square`
[INFO] [stdout]    --> src/movegen/piece_type.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         from_square: Option<Square>, // ignored
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_square`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `is` is never used
[INFO] [stdout]   --> src/movegen/piece_type.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait PieceType {
[INFO] [stdout]    |           --------- associated function in this trait
[INFO] [stdout] 15 |     fn is(piece: Piece) -> bool;
[INFO] [stdout]    |        ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: 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: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]  --> benches/benchmarks/perft.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `TryInto` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `san`
[INFO] [stdout]   --> benches/benchmarks/game.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |     for (index, san) in san_moves.iter().enumerate() {
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_san`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `legality_benchmarks` is never used
[INFO] [stdout]   --> benches/benchmarks/game.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn legality_benchmarks(c: &mut Criterion) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryFrom` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                             ^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ExactSizeIterator` is imported redundantly
[INFO] [stdout]   --> src/movegen/movegen.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::iter::ExactSizeIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `ExactSizeIterator` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]    --> src/movegen/movegen.rs:553:5
[INFO] [stdout]     |
[INFO] [stdout] 553 | use std::convert::TryInto;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout]     = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::piece_type::*`
[INFO] [stdout]  --> src/movegen/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::piece_type::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/game.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]    --> src/board_builder.rs:512:5
[INFO] [stdout]     |
[INFO] [stdout] 512 | use std::convert::TryInto;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout]     = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_square`
[INFO] [stdout]    --> src/movegen/piece_type.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         from_square: Option<Square>, // ignored
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_square`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `is` is never used
[INFO] [stdout]   --> src/movegen/piece_type.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait PieceType {
[INFO] [stdout]    |           --------- associated function in this trait
[INFO] [stdout] 15 |     fn is(piece: Piece) -> bool;
[INFO] [stdout]    |        ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: 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: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 21.37s
[INFO] running `Command { std: "docker" "inspect" "2d39cc1d687c3ef9cc25cc1e00e055dcdbc8db985e8dcc4738437c9a8ba9e91e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d39cc1d687c3ef9cc25cc1e00e055dcdbc8db985e8dcc4738437c9a8ba9e91e", kill_on_drop: false }`
[INFO] [stdout] 2d39cc1d687c3ef9cc25cc1e00e055dcdbc8db985e8dcc4738437c9a8ba9e91e
[INFO] checking candidate-0.0.5 against master#09bc67b9158392361780e779d32997f14cc75c39 for opaque-soundness-fix
[INFO] extracting crate candidate 0.0.5 into /workspace/builds/worker-6-tc2/source
[INFO] validating manifest of crates.io crate candidate 0.0.5 on toolchain 09bc67b9158392361780e779d32997f14cc75c39
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate candidate 0.0.5
[INFO] finished tweaking crates.io crate candidate 0.0.5
[INFO] tweaked toml for crates.io crate candidate 0.0.5 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e5b72de2e42d523028c9df30c3844fb9d606ade36ac68bd6336012d40d8551c4
[INFO] running `Command { std: "docker" "start" "-a" "e5b72de2e42d523028c9df30c3844fb9d606ade36ac68bd6336012d40d8551c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e5b72de2e42d523028c9df30c3844fb9d606ade36ac68bd6336012d40d8551c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5b72de2e42d523028c9df30c3844fb9d606ade36ac68bd6336012d40d8551c4", kill_on_drop: false }`
[INFO] [stdout] e5b72de2e42d523028c9df30c3844fb9d606ade36ac68bd6336012d40d8551c4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9501612e17f757f594e46b5e8d779339a3c51667b28b3171a849d25bf94a546b
[INFO] running `Command { std: "docker" "start" "-a" "9501612e17f757f594e46b5e8d779339a3c51667b28b3171a849d25bf94a546b", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling cc v1.0.90
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling rand_pcg v0.2.1
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]     Checking itoa v1.0.10
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]     Checking ryu v1.0.17
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]     Checking plotters-backend v0.3.5
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking regex-syntax v0.8.2
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking plotters-svg v0.3.5
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]    Compiling syn v2.0.53
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking half v1.8.3
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking rayon v1.9.0
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]     Checking criterion-plot v0.4.5
[INFO] [stderr]     Checking oorandom v11.1.3
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking plotters v0.3.5
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking csv v1.3.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling candidate v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: 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: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryFrom` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                             ^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ExactSizeIterator` is imported redundantly
[INFO] [stdout]   --> src/movegen/movegen.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::iter::ExactSizeIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `ExactSizeIterator` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::piece_type::*`
[INFO] [stdout]  --> src/movegen/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::piece_type::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/game.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.3.6
[INFO] [stdout] warning: unused variable: `from_square`
[INFO] [stdout]    --> src/movegen/piece_type.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         from_square: Option<Square>, // ignored
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_square`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `is` is never used
[INFO] [stdout]   --> src/movegen/piece_type.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait PieceType {
[INFO] [stdout]    |           --------- associated function in this trait
[INFO] [stdout] 15 |     fn is(piece: Piece) -> bool;
[INFO] [stdout]    |        ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: 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: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]  --> benches/benchmarks/perft.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `TryInto` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `san`
[INFO] [stdout]   --> benches/benchmarks/game.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |     for (index, san) in san_moves.iter().enumerate() {
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_san`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `legality_benchmarks` is never used
[INFO] [stdout]   --> benches/benchmarks/game.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn legality_benchmarks(c: &mut Criterion) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryFrom` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryFrom` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]   --> src/board.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                             ^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ExactSizeIterator` is imported redundantly
[INFO] [stdout]   --> src/movegen/movegen.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::iter::ExactSizeIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `ExactSizeIterator` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]    --> src/movegen/movegen.rs:553:5
[INFO] [stdout]     |
[INFO] [stdout] 553 | use std::convert::TryInto;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout]     = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::piece_type::*`
[INFO] [stdout]  --> src/movegen/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::piece_type::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/game.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `TryInto` is imported redundantly
[INFO] [stdout]    --> src/board_builder.rs:512:5
[INFO] [stdout]     |
[INFO] [stdout] 512 | use std::convert::TryInto;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout]     = note: the item `TryInto` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_square`
[INFO] [stdout]    --> src/movegen/piece_type.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         from_square: Option<Square>, // ignored
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_square`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `is` is never used
[INFO] [stdout]   --> src/movegen/piece_type.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait PieceType {
[INFO] [stdout]    |           --------- associated function in this trait
[INFO] [stdout] 15 |     fn is(piece: Piece) -> bool;
[INFO] [stdout]    |        ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/error.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)]
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[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: 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: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 16.07s
[INFO] running `Command { std: "docker" "inspect" "9501612e17f757f594e46b5e8d779339a3c51667b28b3171a849d25bf94a546b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9501612e17f757f594e46b5e8d779339a3c51667b28b3171a849d25bf94a546b", kill_on_drop: false }`
[INFO] [stdout] 9501612e17f757f594e46b5e8d779339a3c51667b28b3171a849d25bf94a546b
