[INFO] cloning repository https://github.com/Jakur/topaz-tak
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jakur/topaz-tak" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJakur%2Ftopaz-tak", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJakur%2Ftopaz-tak'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 961170f17b8da80006379999a236c865fbe7dd1b
[INFO] checking Jakur/topaz-tak against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJakur%2Ftopaz-tak" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Jakur/topaz-tak on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Jakur/topaz-tak
[INFO] finished tweaking git repo https://github.com/Jakur/topaz-tak
[INFO] tweaked toml for git repo https://github.com/Jakur/topaz-tak written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/Jakur/topaz-tak 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" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.29
[INFO] [stderr]   Downloaded bitintr v0.3.0
[INFO] [stderr]   Downloaded plotters-svg v0.3.1
[INFO] [stderr]   Downloaded colorful v0.2.1
[INFO] [stderr]   Downloaded criterion-plot v0.4.4
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.78
[INFO] [stderr]   Downloaded termtree v0.2.3
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.78
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.78
[INFO] [stderr]   Downloaded memoffset v0.6.4
[INFO] [stderr]   Downloaded walkdir v2.3.2
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.78
[INFO] [stderr]   Downloaded anyhow v1.0.44
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.78
[INFO] [stderr]   Downloaded csv v1.1.6
[INFO] [stderr]   Downloaded web-sys v0.3.55
[INFO] [stderr]   Downloaded libc v0.2.102
[INFO] [stderr]   Downloaded serde_json v1.0.68
[INFO] [stderr]   Downloaded plotters v0.3.1
[INFO] [stderr]   Downloaded criterion v0.3.5
[INFO] [stderr]   Downloaded syn v1.0.77
[INFO] [stderr]   Downloaded regex-automata v0.1.10
[INFO] [stderr]   Downloaded bstr v0.2.17
[INFO] [stderr]   Downloaded clap v2.33.3
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.5
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.5
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.1
[INFO] [stderr]   Downloaded semver v1.0.4
[INFO] [stderr]   Downloaded itertools v0.10.1
[INFO] [stderr]   Downloaded bumpalo v3.7.1
[INFO] [stderr]   Downloaded half v1.7.1
[INFO] [stderr]   Downloaded getrandom v0.2.3
[INFO] [stderr]   Downloaded quote v1.0.9
[INFO] [stderr]   Downloaded js-sys v0.3.55
[INFO] [stderr]   Downloaded unicode-width v0.1.9
[INFO] [stderr]   Downloaded num_cpus v1.13.0
[INFO] [stderr]   Downloaded telnet v0.2.1
[INFO] [stderr]   Downloaded wasi v0.10.2+wasi-snapshot-preview1
[INFO] [stderr]   Downloaded plotters-backend v0.3.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 94ecb19aca817728452e72318afa3294a836ea5ffc45255bb78853d269b6069c
[INFO] running `Command { std: "docker" "start" "-a" "94ecb19aca817728452e72318afa3294a836ea5ffc45255bb78853d269b6069c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "94ecb19aca817728452e72318afa3294a836ea5ffc45255bb78853d269b6069c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "94ecb19aca817728452e72318afa3294a836ea5ffc45255bb78853d269b6069c", kill_on_drop: false }`
[INFO] [stdout] 94ecb19aca817728452e72318afa3294a836ea5ffc45255bb78853d269b6069c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ce828658aa43180927d1e5dff0b6a7b2db08d9923d7b986c0055182a8ce5d206
[INFO] running `Command { std: "docker" "start" "-a" "ce828658aa43180927d1e5dff0b6a7b2db08d9923d7b986c0055182a8ce5d206", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling libc v0.2.102
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling syn v1.0.77
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling semver v1.0.4
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling anyhow v1.0.44
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]    Compiling serde_json v1.0.68
[INFO] [stderr]    Compiling bitintr v0.3.0
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]     Checking plotters-backend v0.3.2
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]    Compiling serde_derive v1.0.130
[INFO] [stderr]     Checking itoa v1.0.1
[INFO] [stderr]     Checking plotters-svg v0.3.1
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking itertools v0.10.1
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking getopts v0.2.21
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking regex-syntax v0.6.25
[INFO] [stderr]     Checking telnet v0.2.1
[INFO] [stderr]     Checking termtree v0.2.3
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking colorful v0.2.1
[INFO] [stderr]     Checking half v1.7.1
[INFO] [stderr]     Checking plotters v0.3.1
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking walkdir v2.3.2
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]     Checking criterion-plot v0.4.4
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]    Compiling mini-internal v0.1.24
[INFO] [stderr]     Checking miniserde v0.1.24
[INFO] [stderr]     Checking topaz-tak v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Stack`
[INFO] [stdout]  --> src/eval.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{Bitboard, Piece, Stack};
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/lib.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Color::White => ("White"),
[INFO] [stdout]    |                             ^       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -             Color::White => ("White"),
[INFO] [stdout] 38 +             Color::White => "White",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/lib.rs:39:29
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Color::Black => ("Black"),
[INFO] [stdout]    |                             ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -             Color::Black => ("Black"),
[INFO] [stdout] 39 +             Color::Black => "Black",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ply`
[INFO] [stdout]    --> src/move_gen/move_order.rs:181:32
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn get_best(&mut self, ply: usize, info: &SearchInfo) -> GameMove {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_ply`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]    --> src/move_gen/move_order.rs:181:44
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn get_best(&mut self, ply: usize, info: &SearchInfo) -> GameMove {
[INFO] [stdout]     |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `real_idx`
[INFO] [stdout]    --> src/move_gen/magic.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let real_idx = self.offsets[idx].lookup(board.bits().wall.raw_bits(), shift);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_real_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_gen/magic.rs:144:37
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn get_move_limits<T: TakBoard>(board: &T, sq_idx: usize) -> MoveLimits {
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq_idx`
[INFO] [stdout]    --> src/move_gen/magic.rs:144:48
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn get_move_limits<T: TakBoard>(board: &T, sq_idx: usize) -> MoveLimits {
[INFO] [stdout]     |                                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sq_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `magic` is never read
[INFO] [stdout]    --> src/move_gen/magic.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut magic = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offsets`
[INFO] [stdout]    --> src/move_gen/magic.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let offsets: Vec<_> = builder.offsets.iter().cloned().map(|x| x.offset).collect();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offsets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vec` is never read
[INFO] [stdout]    --> src/move_gen/move_order.rs:371:5
[INFO] [stdout]     |
[INFO] [stdout] 370 | pub struct HistoryMoves {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 371 |     vec: Vec<u32>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HistoryMoves` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `square_data`, and `score` are never used
[INFO] [stdout]    --> src/move_gen/move_order.rs:375:12
[INFO] [stdout]     |
[INFO] [stdout] 374 | impl HistoryMoves {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 375 |     pub fn new(board_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn update(&mut self, depth: usize, mv: GameMove) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub fn square_data(&self, square: usize) -> &[u32] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn score(&self, mv: GameMove) -> i16 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MagicMoveArray` is never constructed
[INFO] [stdout]   --> src/move_gen/magic.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | struct MagicMoveArray<const N: usize, const FULL: usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `lookup` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl<const N: usize, const FULL: usize> MagicMoveArray<N, FULL> {
[INFO] [stdout]     | --------------------------------------------------------------- method in this implementation
[INFO] [stdout] 104 |     fn lookup<T: TakBoard>(&self, board: &T, idx: usize) -> MoveLimits {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `magic` is never read
[INFO] [stdout]    --> src/move_gen/magic.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | struct Offset {
[INFO] [stdout]     |        ------ field in this struct
[INFO] [stdout] 113 |     offset: usize,
[INFO] [stdout] 114 |     magic: u64,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Offset` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `lookup` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Offset {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn lookup(&self, key: u64, shift: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveGenValue` is never constructed
[INFO] [stdout]    --> src/move_gen/magic.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct MoveGenValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl MoveGenValue {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 157 |     fn get<T: TakBoard>(&self, board: &T, idx: usize) -> MoveLimits {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_mask6` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:246:4
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn gen_mask6() -> Vec<u64> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check` is never used
[INFO] [stdout]    --> src/search.rs:403:8
[INFO] [stdout]     |
[INFO] [stdout] 392 | impl TakHistory {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 403 |     fn check(self, depth: usize) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.3.5
[INFO] [stdout] warning: unused import: `LOSE_SCORE`
[INFO] [stdout]  --> benches/benchmark.rs:4:44
[INFO] [stdout]   |
[INFO] [stdout] 4 | use topaz_tak::eval::{Evaluator, Weights6, LOSE_SCORE};
[INFO] [stdout]   |                                            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eval`
[INFO] [stdout]   --> benches/benchmark.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let eval = Weights6::default();
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_eval`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_small_perft` is never used
[INFO] [stdout]   --> benches/benchmark.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn execute_small_perft(depth: usize) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `captives_count` is never used
[INFO] [stdout]   --> benches/benchmark.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn captives_count(boards: &[Board6]) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_positions` is never used
[INFO] [stdout]   --> benches/benchmark.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn evaluate_positions<E: Evaluator<Game = Board6>>(positions: &[Board6], eval: &E) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `placement_road` is never used
[INFO] [stdout]   --> benches/benchmark.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn placement_road(_x: ()) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Stack`
[INFO] [stdout]  --> src/eval.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{Bitboard, Piece, Stack};
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/lib.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Color::White => ("White"),
[INFO] [stdout]    |                             ^       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -             Color::White => ("White"),
[INFO] [stdout] 38 +             Color::White => "White",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/lib.rs:39:29
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Color::Black => ("Black"),
[INFO] [stdout]    |                             ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -             Color::Black => ("Black"),
[INFO] [stdout] 39 +             Color::Black => "Black",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ply`
[INFO] [stdout]    --> src/move_gen/move_order.rs:181:32
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn get_best(&mut self, ply: usize, info: &SearchInfo) -> GameMove {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_ply`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]    --> src/move_gen/move_order.rs:181:44
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn get_best(&mut self, ply: usize, info: &SearchInfo) -> GameMove {
[INFO] [stdout]     |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `real_idx`
[INFO] [stdout]    --> src/move_gen/magic.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let real_idx = self.offsets[idx].lookup(board.bits().wall.raw_bits(), shift);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_real_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_gen/magic.rs:144:37
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn get_move_limits<T: TakBoard>(board: &T, sq_idx: usize) -> MoveLimits {
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq_idx`
[INFO] [stdout]    --> src/move_gen/magic.rs:144:48
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn get_move_limits<T: TakBoard>(board: &T, sq_idx: usize) -> MoveLimits {
[INFO] [stdout]     |                                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sq_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `magic` is never read
[INFO] [stdout]    --> src/move_gen/magic.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut magic = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offsets`
[INFO] [stdout]    --> src/move_gen/magic.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let offsets: Vec<_> = builder.offsets.iter().cloned().map(|x| x.offset).collect();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offsets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bits` is never read
[INFO] [stdout]    --> src/eval.rs:268:5
[INFO] [stdout]     |
[INFO] [stdout] 267 | struct BitOutcome<B> {
[INFO] [stdout]     |        ---------- field in this struct
[INFO] [stdout] 268 |     bits: B,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vec` is never read
[INFO] [stdout]    --> src/move_gen/move_order.rs:371:5
[INFO] [stdout]     |
[INFO] [stdout] 370 | pub struct HistoryMoves {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 371 |     vec: Vec<u32>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HistoryMoves` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `square_data`, and `score` are never used
[INFO] [stdout]    --> src/move_gen/move_order.rs:375:12
[INFO] [stdout]     |
[INFO] [stdout] 374 | impl HistoryMoves {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 375 |     pub fn new(board_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn update(&mut self, depth: usize, mv: GameMove) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub fn square_data(&self, square: usize) -> &[u32] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn score(&self, mv: GameMove) -> i16 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MagicMoveArray` is never constructed
[INFO] [stdout]   --> src/move_gen/magic.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | struct MagicMoveArray<const N: usize, const FULL: usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `lookup` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl<const N: usize, const FULL: usize> MagicMoveArray<N, FULL> {
[INFO] [stdout]     | --------------------------------------------------------------- method in this implementation
[INFO] [stdout] 104 |     fn lookup<T: TakBoard>(&self, board: &T, idx: usize) -> MoveLimits {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `magic` is never read
[INFO] [stdout]    --> src/move_gen/magic.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | struct Offset {
[INFO] [stdout]     |        ------ field in this struct
[INFO] [stdout] 113 |     offset: usize,
[INFO] [stdout] 114 |     magic: u64,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Offset` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `lookup` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Offset {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn lookup(&self, key: u64, shift: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveGenValue` is never constructed
[INFO] [stdout]    --> src/move_gen/magic.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct MoveGenValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl MoveGenValue {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 157 |     fn get<T: TakBoard>(&self, board: &T, idx: usize) -> MoveLimits {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_mask6` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:246:4
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn gen_mask6() -> Vec<u64> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check` is never used
[INFO] [stdout]    --> src/search.rs:403:8
[INFO] [stdout]     |
[INFO] [stdout] 392 | impl TakHistory {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 403 |     fn check(self, depth: usize) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 12.73s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.3.5
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "ce828658aa43180927d1e5dff0b6a7b2db08d9923d7b986c0055182a8ce5d206", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce828658aa43180927d1e5dff0b6a7b2db08d9923d7b986c0055182a8ce5d206", kill_on_drop: false }`
[INFO] [stdout] ce828658aa43180927d1e5dff0b6a7b2db08d9923d7b986c0055182a8ce5d206
[INFO] checking Jakur/topaz-tak against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJakur%2Ftopaz-tak" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Jakur/topaz-tak on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Jakur/topaz-tak
[INFO] finished tweaking git repo https://github.com/Jakur/topaz-tak
[INFO] tweaked toml for git repo https://github.com/Jakur/topaz-tak written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/Jakur/topaz-tak 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" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3707ab3032aa12e5b410a8bee159337a76db4ba20536975002aa60b611c9ac37
[INFO] running `Command { std: "docker" "start" "-a" "3707ab3032aa12e5b410a8bee159337a76db4ba20536975002aa60b611c9ac37", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3707ab3032aa12e5b410a8bee159337a76db4ba20536975002aa60b611c9ac37", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3707ab3032aa12e5b410a8bee159337a76db4ba20536975002aa60b611c9ac37", kill_on_drop: false }`
[INFO] [stdout] 3707ab3032aa12e5b410a8bee159337a76db4ba20536975002aa60b611c9ac37
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Dnon_local_definitions" "-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" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6bd82ff46e53cc435dc9f8d60cf722dfaca459d5e9bc82f71c60ba3b99c377bf
[INFO] running `Command { std: "docker" "start" "-a" "6bd82ff46e53cc435dc9f8d60cf722dfaca459d5e9bc82f71c60ba3b99c377bf", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling libc v0.2.102
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling syn v1.0.77
[INFO] [stderr]    Compiling semver v1.0.4
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling serde_json v1.0.68
[INFO] [stderr]    Compiling anyhow v1.0.44
[INFO] [stderr]    Compiling bitintr v0.3.0
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking plotters-backend v0.3.2
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]    Compiling serde_derive v1.0.130
[INFO] [stderr]     Checking itoa v1.0.1
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking plotters-svg v0.3.1
[INFO] [stderr]     Checking itertools v0.10.1
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking getopts v0.2.21
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking termtree v0.2.3
[INFO] [stderr]     Checking telnet v0.2.1
[INFO] [stderr]     Checking half v1.7.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking regex-syntax v0.6.25
[INFO] [stderr]     Checking colorful v0.2.1
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking walkdir v2.3.2
[INFO] [stderr]     Checking plotters v0.3.1
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking criterion-plot v0.4.4
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]    Compiling mini-internal v0.1.24
[INFO] [stderr]     Checking miniserde v0.1.24
[INFO] [stderr]     Checking topaz-tak v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Stack`
[INFO] [stdout]  --> src/eval.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{Bitboard, Piece, Stack};
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/lib.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Color::White => ("White"),
[INFO] [stdout]    |                             ^       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -             Color::White => ("White"),
[INFO] [stdout] 38 +             Color::White => "White",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/lib.rs:39:29
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Color::Black => ("Black"),
[INFO] [stdout]    |                             ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -             Color::Black => ("Black"),
[INFO] [stdout] 39 +             Color::Black => "Black",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ply`
[INFO] [stdout]    --> src/move_gen/move_order.rs:181:32
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn get_best(&mut self, ply: usize, info: &SearchInfo) -> GameMove {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_ply`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]    --> src/move_gen/move_order.rs:181:44
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn get_best(&mut self, ply: usize, info: &SearchInfo) -> GameMove {
[INFO] [stdout]     |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `real_idx`
[INFO] [stdout]    --> src/move_gen/magic.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let real_idx = self.offsets[idx].lookup(board.bits().wall.raw_bits(), shift);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_real_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_gen/magic.rs:144:37
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn get_move_limits<T: TakBoard>(board: &T, sq_idx: usize) -> MoveLimits {
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq_idx`
[INFO] [stdout]    --> src/move_gen/magic.rs:144:48
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn get_move_limits<T: TakBoard>(board: &T, sq_idx: usize) -> MoveLimits {
[INFO] [stdout]     |                                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sq_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `magic` is never read
[INFO] [stdout]    --> src/move_gen/magic.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut magic = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offsets`
[INFO] [stdout]    --> src/move_gen/magic.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let offsets: Vec<_> = builder.offsets.iter().cloned().map(|x| x.offset).collect();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offsets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vec` is never read
[INFO] [stdout]    --> src/move_gen/move_order.rs:371:5
[INFO] [stdout]     |
[INFO] [stdout] 370 | pub struct HistoryMoves {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 371 |     vec: Vec<u32>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HistoryMoves` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `square_data`, and `score` are never used
[INFO] [stdout]    --> src/move_gen/move_order.rs:375:12
[INFO] [stdout]     |
[INFO] [stdout] 374 | impl HistoryMoves {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 375 |     pub fn new(board_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn update(&mut self, depth: usize, mv: GameMove) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub fn square_data(&self, square: usize) -> &[u32] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn score(&self, mv: GameMove) -> i16 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MagicMoveArray` is never constructed
[INFO] [stdout]   --> src/move_gen/magic.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | struct MagicMoveArray<const N: usize, const FULL: usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `lookup` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl<const N: usize, const FULL: usize> MagicMoveArray<N, FULL> {
[INFO] [stdout]     | --------------------------------------------------------------- method in this implementation
[INFO] [stdout] 104 |     fn lookup<T: TakBoard>(&self, board: &T, idx: usize) -> MoveLimits {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `magic` is never read
[INFO] [stdout]    --> src/move_gen/magic.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | struct Offset {
[INFO] [stdout]     |        ------ field in this struct
[INFO] [stdout] 113 |     offset: usize,
[INFO] [stdout] 114 |     magic: u64,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Offset` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `lookup` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Offset {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn lookup(&self, key: u64, shift: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveGenValue` is never constructed
[INFO] [stdout]    --> src/move_gen/magic.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct MoveGenValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl MoveGenValue {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 157 |     fn get<T: TakBoard>(&self, board: &T, idx: usize) -> MoveLimits {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_mask6` is never used
[INFO] [stdout]    --> src/move_gen/magic.rs:246:4
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn gen_mask6() -> Vec<u64> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check` is never used
[INFO] [stdout]    --> src/search.rs:403:8
[INFO] [stdout]     |
[INFO] [stdout] 392 | impl TakHistory {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 403 |     fn check(self, depth: usize) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/search/book.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_MINISERIALIZE_FOR_Book`
[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: 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: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/search/book.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_MINIDESERIALIZE_FOR_Book`
[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: 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: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/search/book.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_MINISERIALIZE_FOR_BookEval`
[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: 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: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/search/book.rs:73:21
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_MINIDESERIALIZE_FOR_BookEval`
[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: 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: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/search/book.rs:111:30
[INFO] [stdout]     |
[INFO] [stdout] 111 | #[derive(Clone, Copy, Debug, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_IMPL_MINISERIALIZE_FOR_BookMode`
[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: 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: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/search/book.rs:111:41
[INFO] [stdout]     |
[INFO] [stdout] 111 | #[derive(Clone, Copy, Debug, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_IMPL_MINIDESERIALIZE_FOR_BookMode`
[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: 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: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors; 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `topaz-tak` (lib) due to 7 previous errors; 20 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "6bd82ff46e53cc435dc9f8d60cf722dfaca459d5e9bc82f71c60ba3b99c377bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6bd82ff46e53cc435dc9f8d60cf722dfaca459d5e9bc82f71c60ba3b99c377bf", kill_on_drop: false }`
[INFO] [stdout] 6bd82ff46e53cc435dc9f8d60cf722dfaca459d5e9bc82f71c60ba3b99c377bf
