[INFO] updating cached repository https://github.com/jheek/rust-chess
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 1deba618be758919504b41feb4dbbbd287d0cc2e
[INFO] checking jheek/rust-chess against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjheek%2Frust-chess" "/workspace/builds/worker-14/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-14/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jheek/rust-chess on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/jheek/rust-chess
[INFO] finished tweaking git repo https://github.com/jheek/rust-chess
[INFO] tweaked toml for git repo https://github.com/jheek/rust-chess written to /workspace/builds/worker-14/source/Cargo.toml
[INFO] crate git repo https://github.com/jheek/rust-chess already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] b4d5df3474daac85407a3cf0d0296a0a096d750a71268a34b8d2cbde142304b5
[INFO] running `"docker" "start" "-a" "b4d5df3474daac85407a3cf0d0296a0a096d750a71268a34b8d2cbde142304b5"`
[INFO] [stderr]     Checking futures v0.1.24
[INFO] [stderr]     Checking lazycell v1.0.0
[INFO] [stderr]    Compiling openssl v0.10.12
[INFO] [stderr]    Compiling native-tls v0.2.1
[INFO] [stderr]    Compiling proc-macro2 v0.4.17
[INFO] [stderr]    Compiling serde v1.0.76
[INFO] [stderr]     Checking utf-8 v0.7.4
[INFO] [stderr]     Checking atomic-option v0.1.2
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking log v0.4.5
[INFO] [stderr]     Checking rand v0.5.5
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]    Compiling rand v0.4.3
[INFO] [stderr]     Checking base64 v0.9.3
[INFO] [stderr]    Compiling openssl-sys v0.9.36
[INFO] [stderr]     Checking lock_api v0.1.3
[INFO] [stderr]     Checking smallvec v0.6.5
[INFO] [stderr]     Checking url v1.7.1
[INFO] [stderr]     Checking crossbeam-epoch v0.5.2
[INFO] [stderr]     Checking digest v0.7.5
[INFO] [stderr]     Checking bytes v0.4.10
[INFO] [stderr]     Checking sha-1 v0.7.0
[INFO] [stderr]     Checking mio v0.6.16
[INFO] [stderr]     Checking crossbeam-deque v0.6.1
[INFO] [stderr]     Checking input_buffer v0.2.0
[INFO] [stderr]    Compiling quote v0.6.8
[INFO] [stderr]    Compiling chess v1.0.4
[INFO] [stderr]    Compiling syn v0.14.9
[INFO] [stderr]     Checking parking_lot_core v0.3.1
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking tokio-executor v0.1.4
[INFO] [stderr]     Checking tokio-io v0.1.8
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking tokio-threadpool v0.1.6
[INFO] [stderr]     Checking tokio-current-thread v0.1.1
[INFO] [stderr]     Checking tokio-timer v0.2.6
[INFO] [stderr]     Checking tokio-reactor v0.1.5
[INFO] [stderr]     Checking tokio-codec v0.1.0
[INFO] [stderr]     Checking tokio-fs v0.1.3
[INFO] [stderr]     Checking tokio-udp v0.1.2
[INFO] [stderr]     Checking tokio-uds v0.2.1
[INFO] [stderr]     Checking tokio-tcp v0.1.1
[INFO] [stderr]     Checking tokio v0.1.8
[INFO] [stderr]     Checking tokio-dns-unofficial v0.3.1
[INFO] [stderr]    Compiling serde_derive v1.0.76
[INFO] [stderr]     Checking tungstenite v0.6.0
[INFO] [stderr]     Checking tokio-tls v0.2.0
[INFO] [stderr]     Checking tokio-tungstenite v0.6.0
[INFO] [stderr]     Checking serde_json v1.0.26
[INFO] [stderr]     Checking rust_chess v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> src/minmax.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Either`, `err`, `ok`
[INFO] [stderr]   --> src/main.rs:26:23
[INFO] [stderr]    |
[INFO] [stderr] 26 | use futures::future::{err, loop_fn, ok, Either, Loop};
[INFO] [stderr]    |                       ^^^           ^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `eval::*`
[INFO] [stderr]   --> src/main.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | use eval::*;
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/main.rs:50:33
[INFO] [stderr]    |
[INFO] [stderr] 50 |     static ref TTABLE: TTable = { TTable::new(100 * 1024 * 1024) };
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> src/minmax.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:295:55
[INFO] [stderr]     |
[INFO] [stderr] 295 |         let mut moves_ar: [ChessMove; 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:358:67
[INFO] [stderr]     |
[INFO] [stderr] 358 |     let mut moves_data: [(Board, Option<TEntry>); 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Either`, `err`, `ok`
[INFO] [stderr]   --> src/main.rs:26:23
[INFO] [stderr]    |
[INFO] [stderr] 26 | use futures::future::{err, loop_fn, ok, Either, Loop};
[INFO] [stderr]    |                       ^^^           ^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `eval::*`
[INFO] [stderr]   --> src/main.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | use eval::*;
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/main.rs:50:33
[INFO] [stderr]    |
[INFO] [stderr] 50 |     static ref TTABLE: TTable = { TTable::new(100 * 1024 * 1024) };
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:295:55
[INFO] [stderr]     |
[INFO] [stderr] 295 |         let mut moves_ar: [ChessMove; 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:358:67
[INFO] [stderr]     |
[INFO] [stderr] 358 |     let mut moves_data: [(Board, Option<TEntry>); 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:359:58
[INFO] [stderr]     |
[INFO] [stderr] 359 |     let mut ordered_moves: [(u8, Score); 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:386:63
[INFO] [stderr]     |
[INFO] [stderr] 386 |             let mut sub_moves_ar: [ChessMove; 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                               ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]  --> src/utils.rs:6:30
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut moves = unsafe { mem::uninitialized() };
[INFO] [stderr]   |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:359:58
[INFO] [stderr]     |
[INFO] [stderr] 359 |     let mut ordered_moves: [(u8, Score); 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/minmax.rs:386:63
[INFO] [stderr]     |
[INFO] [stderr] 386 |             let mut sub_moves_ar: [ChessMove; 256] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                                               ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead
[INFO] [stderr]  --> src/utils.rs:6:30
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut moves = unsafe { mem::uninitialized() };
[INFO] [stderr]   |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `WIN_SCORE`
[INFO] [stderr]  --> src/eval.rs:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub const WIN_SCORE: Score = 100000;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `DRAW_SCORE`
[INFO] [stderr]  --> src/eval.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub const DRAW_SCORE: Score = 0;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `MIN_SCORE`
[INFO] [stderr]   --> src/eval.rs:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub const MIN_SCORE: Score = -1000000;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `MAX_SCORE`
[INFO] [stderr]   --> src/eval.rs:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub const MAX_SCORE: Score = 1000000;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_PAWNS`
[INFO] [stderr]   --> src/eval.rs:13:1
[INFO] [stderr]    |
[INFO] [stderr] 13 | / const PT_PAWNS: [i32; 64] = [
[INFO] [stderr] 14 | |     0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 10, 10, 20, 30, 30, 20, 10, 10, 5, 5,
[INFO] [stderr] 15 | |     10, 25, 25, 10, 5, 5, 0, 0, 0, 20, 20, 0, 0, 0, 5, -5, -10, 0, 0, -10, -5, 5, 5, 10, 10, -20,
[INFO] [stderr] 16 | |     -20, 10, 10, 5, 0, 0, 0, 0, 0, 0, 0, 0,
[INFO] [stderr] 17 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_KNIGHT`
[INFO] [stderr]   --> src/eval.rs:19:1
[INFO] [stderr]    |
[INFO] [stderr] 19 | / const PT_KNIGHT: [i32; 64] = [
[INFO] [stderr] 20 | |     -50, -40, -30, -30, -30, -30, -40, -50, -40, -20, 0, 0, 0, 0, -20, -40, -30, 0, 10, 15, 15, 10,
[INFO] [stderr] 21 | |     0, -30, -30, 5, 15, 20, 20, 15, 5, -30, -30, 0, 15, 20, 20, 15, 0, -30, -30, 5, 10, 15, 15, 10,
[INFO] [stderr] 22 | |     5, -30, -40, -20, 0, 5, 5, 0, -20, -40, -50, -40, -30, -30, -30, -30, -40, -50,
[INFO] [stderr] 23 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_BISHOP`
[INFO] [stderr]   --> src/eval.rs:25:1
[INFO] [stderr]    |
[INFO] [stderr] 25 | / const PT_BISHOP: [i32; 64] = [
[INFO] [stderr] 26 | |     -20, -10, -10, -10, -10, -10, -10, -20, -10, 0, 0, 0, 0, 0, 0, -10, -10, 0, 5, 10, 10, 5, 0,
[INFO] [stderr] 27 | |     -10, -10, 5, 5, 10, 10, 5, 5, -10, -10, 0, 10, 10, 10, 10, 0, -10, -10, 10, 10, 10, 10, 10, 10,
[INFO] [stderr] 28 | |     -10, -10, 5, 0, 0, 0, 0, 5, -10, -20, -10, -10, -10, -10, -10, -10, -20,
[INFO] [stderr] 29 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_ROOK`
[INFO] [stderr]   --> src/eval.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | / const PT_ROOK: [i32; 64] = [
[INFO] [stderr] 32 | |     0, 0, 0, 0, 0, 0, 0, 0, 5, 10, 10, 10, 10, 10, 10, 5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0,
[INFO] [stderr] 33 | |     0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, 0, 0,
[INFO] [stderr] 34 | |     0, 5, 5, 0, 0, 0,
[INFO] [stderr] 35 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_QUEEN`
[INFO] [stderr]   --> src/eval.rs:37:1
[INFO] [stderr]    |
[INFO] [stderr] 37 | / const PT_QUEEN: [i32; 64] = [
[INFO] [stderr] 38 | |     -20, -10, -10, -5, -5, -10, -10, -20, -10, 0, 0, 0, 0, 0, 0, -10, -10, 0, 5, 5, 5, 5, 0, -10,
[INFO] [stderr] 39 | |     -5, 0, 5, 5, 5, 5, 0, -5, 0, 0, 5, 5, 5, 5, 0, -5, -10, 5, 5, 5, 5, 5, 0, -10, -10, 0, 5, 0, 0,
[INFO] [stderr] 40 | |     0, 0, -10, -20, -10, -10, -5, -5, -10, -10, -20,
[INFO] [stderr] 41 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_KING`
[INFO] [stderr]   --> src/eval.rs:43:1
[INFO] [stderr]    |
[INFO] [stderr] 43 | / const PT_KING: [i32; 64] = [
[INFO] [stderr] 44 | |     -30, -40, -40, -50, -50, -40, -40, -30, -30, -40, -40, -50, -50, -40, -40, -30, -30, -40, -40,
[INFO] [stderr] 45 | |     -50, -50, -40, -40, -30, -30, -40, -40, -50, -50, -40, -40, -30, -20, -30, -30, -40, -40, -30,
[INFO] [stderr] 46 | |     -30, -20, -10, -20, -20, -20, -20, -20, -20, -10, 20, 20, 0, 0, 0, 0, 20, 20, 20, 30, 10, 0, 0,
[INFO] [stderr] 47 | |     10, 30, 20,
[INFO] [stderr] 48 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `piece_score`
[INFO] [stderr]   --> src/eval.rs:50:4
[INFO] [stderr]    |
[INFO] [stderr] 50 | fn piece_score(piece: Piece) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `piece_captureable_score`
[INFO] [stderr]   --> src/eval.rs:61:4
[INFO] [stderr]    |
[INFO] [stderr] 61 | fn piece_captureable_score(piece: Piece) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `piece_position_table`
[INFO] [stderr]   --> src/eval.rs:72:4
[INFO] [stderr]    |
[INFO] [stderr] 72 | fn piece_position_table(piece: Piece) -> &'static [i32; 64] {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `material_score`
[INFO] [stderr]   --> src/eval.rs:83:4
[INFO] [stderr]    |
[INFO] [stderr] 83 | fn material_score(board: &Board, color: Color) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `position_score`
[INFO] [stderr]   --> src/eval.rs:91:4
[INFO] [stderr]    |
[INFO] [stderr] 91 | fn position_score(board: &Board, color: Color) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `movability_score`
[INFO] [stderr]    --> src/eval.rs:107:4
[INFO] [stderr]     |
[INFO] [stderr] 107 | fn movability_score(board: &Board, moves: &[ChessMove]) -> Score {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `quick_status`
[INFO] [stderr]    --> src/eval.rs:122:8
[INFO] [stderr]     |
[INFO] [stderr] 122 | pub fn quick_status(board: &Board, num_moves: usize) -> BoardStatus {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `fast_board_score`
[INFO] [stderr]    --> src/eval.rs:134:8
[INFO] [stderr]     |
[INFO] [stderr] 134 | pub fn fast_board_score(board: &Board, depth: i32) -> Score {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `board_score`
[INFO] [stderr]    --> src/eval.rs:149:8
[INFO] [stderr]     |
[INFO] [stderr] 149 | pub fn board_score(board: &Board, moves: &[ChessMove], depth: i32) -> Score {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `AlphaBetaResult`
[INFO] [stderr]   --> src/minmax.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct AlphaBetaResult {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `ABResult`
[INFO] [stderr]   --> src/minmax.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | struct ABResult {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `from_tentry`
[INFO] [stderr]   --> src/minmax.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn from_tentry(entry: TEntry, min_depth: i32) -> Option<ABResult> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `start`
[INFO] [stderr]   --> src/minmax.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 | /     pub fn start<F>(
[INFO] [stderr] 61 | |         ttable: &'static TTable,
[INFO] [stderr] 62 | |         board: Board,
[INFO] [stderr] 63 | |         max_depth: i32,
[INFO] [stderr] ...  |
[INFO] [stderr] 84 | |         is
[INFO] [stderr] 85 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `join`
[INFO] [stderr]   --> src/minmax.rs:87:5
[INFO] [stderr]    |
[INFO] [stderr] 87 |     pub fn join(mut self) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `infinite_search`
[INFO] [stderr]    --> src/minmax.rs:108:8
[INFO] [stderr]     |
[INFO] [stderr] 108 | pub fn infinite_search(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `aspiration_search`
[INFO] [stderr]    --> src/minmax.rs:180:4
[INFO] [stderr]     |
[INFO] [stderr] 180 | fn aspiration_search<F>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `alpha_beta_line`
[INFO] [stderr]    --> src/minmax.rs:244:4
[INFO] [stderr]     |
[INFO] [stderr] 244 | fn alpha_beta_line<F>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `alpha_beta`
[INFO] [stderr]    --> src/minmax.rs:280:4
[INFO] [stderr]     |
[INFO] [stderr] 280 | fn alpha_beta<F>(
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `alpha_beta_raw`
[INFO] [stderr]    --> src/minmax.rs:302:4
[INFO] [stderr]     |
[INFO] [stderr] 302 | fn alpha_beta_raw<F>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant is never constructed: `Exact`
[INFO] [stderr]   --> src/ttable.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     Exact(Score),
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `as_approximation`
[INFO] [stderr]   --> src/ttable.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub fn as_approximation(self) -> Score {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `table`
[INFO] [stderr]   --> src/ttable.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     table: Vec<AtomicOption<TEntry>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `put`
[INFO] [stderr]   --> src/ttable.rs:66:5
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub fn put(&self, entry: TEntry) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `fetch`
[INFO] [stderr]   --> src/ttable.rs:81:5
[INFO] [stderr]    |
[INFO] [stderr] 81 |     pub fn fetch(&self, hash: u64) -> Option<TEntry> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `hash_index`
[INFO] [stderr]   --> src/ttable.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     fn hash_index(&self, hash: u64) -> usize {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `WIN_SCORE`
[INFO] [stderr]  --> src/eval.rs:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub const WIN_SCORE: Score = 100000;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `DRAW_SCORE`
[INFO] [stderr]  --> src/eval.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub const DRAW_SCORE: Score = 0;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `MIN_SCORE`
[INFO] [stderr]   --> src/eval.rs:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub const MIN_SCORE: Score = -1000000;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `MAX_SCORE`
[INFO] [stderr]   --> src/eval.rs:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub const MAX_SCORE: Score = 1000000;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_PAWNS`
[INFO] [stderr]   --> src/eval.rs:13:1
[INFO] [stderr]    |
[INFO] [stderr] 13 | / const PT_PAWNS: [i32; 64] = [
[INFO] [stderr] 14 | |     0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 10, 10, 20, 30, 30, 20, 10, 10, 5, 5,
[INFO] [stderr] 15 | |     10, 25, 25, 10, 5, 5, 0, 0, 0, 20, 20, 0, 0, 0, 5, -5, -10, 0, 0, -10, -5, 5, 5, 10, 10, -20,
[INFO] [stderr] 16 | |     -20, 10, 10, 5, 0, 0, 0, 0, 0, 0, 0, 0,
[INFO] [stderr] 17 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_KNIGHT`
[INFO] [stderr]   --> src/eval.rs:19:1
[INFO] [stderr]    |
[INFO] [stderr] 19 | / const PT_KNIGHT: [i32; 64] = [
[INFO] [stderr] 20 | |     -50, -40, -30, -30, -30, -30, -40, -50, -40, -20, 0, 0, 0, 0, -20, -40, -30, 0, 10, 15, 15, 10,
[INFO] [stderr] 21 | |     0, -30, -30, 5, 15, 20, 20, 15, 5, -30, -30, 0, 15, 20, 20, 15, 0, -30, -30, 5, 10, 15, 15, 10,
[INFO] [stderr] 22 | |     5, -30, -40, -20, 0, 5, 5, 0, -20, -40, -50, -40, -30, -30, -30, -30, -40, -50,
[INFO] [stderr] 23 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_BISHOP`
[INFO] [stderr]   --> src/eval.rs:25:1
[INFO] [stderr]    |
[INFO] [stderr] 25 | / const PT_BISHOP: [i32; 64] = [
[INFO] [stderr] 26 | |     -20, -10, -10, -10, -10, -10, -10, -20, -10, 0, 0, 0, 0, 0, 0, -10, -10, 0, 5, 10, 10, 5, 0,
[INFO] [stderr] 27 | |     -10, -10, 5, 5, 10, 10, 5, 5, -10, -10, 0, 10, 10, 10, 10, 0, -10, -10, 10, 10, 10, 10, 10, 10,
[INFO] [stderr] 28 | |     -10, -10, 5, 0, 0, 0, 0, 5, -10, -20, -10, -10, -10, -10, -10, -10, -20,
[INFO] [stderr] 29 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_ROOK`
[INFO] [stderr]   --> src/eval.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | / const PT_ROOK: [i32; 64] = [
[INFO] [stderr] 32 | |     0, 0, 0, 0, 0, 0, 0, 0, 5, 10, 10, 10, 10, 10, 10, 5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0,
[INFO] [stderr] 33 | |     0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, 0, 0,
[INFO] [stderr] 34 | |     0, 5, 5, 0, 0, 0,
[INFO] [stderr] 35 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_QUEEN`
[INFO] [stderr]   --> src/eval.rs:37:1
[INFO] [stderr]    |
[INFO] [stderr] 37 | / const PT_QUEEN: [i32; 64] = [
[INFO] [stderr] 38 | |     -20, -10, -10, -5, -5, -10, -10, -20, -10, 0, 0, 0, 0, 0, 0, -10, -10, 0, 5, 5, 5, 5, 0, -10,
[INFO] [stderr] 39 | |     -5, 0, 5, 5, 5, 5, 0, -5, 0, 0, 5, 5, 5, 5, 0, -5, -10, 5, 5, 5, 5, 5, 0, -10, -10, 0, 5, 0, 0,
[INFO] [stderr] 40 | |     0, 0, -10, -20, -10, -10, -5, -5, -10, -10, -20,
[INFO] [stderr] 41 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `PT_KING`
[INFO] [stderr]   --> src/eval.rs:43:1
[INFO] [stderr]    |
[INFO] [stderr] 43 | / const PT_KING: [i32; 64] = [
[INFO] [stderr] 44 | |     -30, -40, -40, -50, -50, -40, -40, -30, -30, -40, -40, -50, -50, -40, -40, -30, -30, -40, -40,
[INFO] [stderr] 45 | |     -50, -50, -40, -40, -30, -30, -40, -40, -50, -50, -40, -40, -30, -20, -30, -30, -40, -40, -30,
[INFO] [stderr] 46 | |     -30, -20, -10, -20, -20, -20, -20, -20, -20, -10, 20, 20, 0, 0, 0, 0, 20, 20, 20, 30, 10, 0, 0,
[INFO] [stderr] 47 | |     10, 30, 20,
[INFO] [stderr] 48 | | ];
[INFO] [stderr]    | |__^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `piece_score`
[INFO] [stderr]   --> src/eval.rs:50:4
[INFO] [stderr]    |
[INFO] [stderr] 50 | fn piece_score(piece: Piece) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `piece_captureable_score`
[INFO] [stderr]   --> src/eval.rs:61:4
[INFO] [stderr]    |
[INFO] [stderr] 61 | fn piece_captureable_score(piece: Piece) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `piece_position_table`
[INFO] [stderr]   --> src/eval.rs:72:4
[INFO] [stderr]    |
[INFO] [stderr] 72 | fn piece_position_table(piece: Piece) -> &'static [i32; 64] {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `material_score`
[INFO] [stderr]   --> src/eval.rs:83:4
[INFO] [stderr]    |
[INFO] [stderr] 83 | fn material_score(board: &Board, color: Color) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `position_score`
[INFO] [stderr]   --> src/eval.rs:91:4
[INFO] [stderr]    |
[INFO] [stderr] 91 | fn position_score(board: &Board, color: Color) -> Score {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `movability_score`
[INFO] [stderr]    --> src/eval.rs:107:4
[INFO] [stderr]     |
[INFO] [stderr] 107 | fn movability_score(board: &Board, moves: &[ChessMove]) -> Score {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `quick_status`
[INFO] [stderr]    --> src/eval.rs:122:8
[INFO] [stderr]     |
[INFO] [stderr] 122 | pub fn quick_status(board: &Board, num_moves: usize) -> BoardStatus {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `fast_board_score`
[INFO] [stderr]    --> src/eval.rs:134:8
[INFO] [stderr]     |
[INFO] [stderr] 134 | pub fn fast_board_score(board: &Board, depth: i32) -> Score {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `board_score`
[INFO] [stderr]    --> src/eval.rs:149:8
[INFO] [stderr]     |
[INFO] [stderr] 149 | pub fn board_score(board: &Board, moves: &[ChessMove], depth: i32) -> Score {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `AlphaBetaResult`
[INFO] [stderr]   --> src/minmax.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct AlphaBetaResult {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `ABResult`
[INFO] [stderr]   --> src/minmax.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | struct ABResult {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `from_tentry`
[INFO] [stderr]   --> src/minmax.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn from_tentry(entry: TEntry, min_depth: i32) -> Option<ABResult> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `start`
[INFO] [stderr]   --> src/minmax.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 | /     pub fn start<F>(
[INFO] [stderr] 61 | |         ttable: &'static TTable,
[INFO] [stderr] 62 | |         board: Board,
[INFO] [stderr] 63 | |         max_depth: i32,
[INFO] [stderr] ...  |
[INFO] [stderr] 84 | |         is
[INFO] [stderr] 85 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `join`
[INFO] [stderr]   --> src/minmax.rs:87:5
[INFO] [stderr]    |
[INFO] [stderr] 87 |     pub fn join(mut self) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `infinite_search`
[INFO] [stderr]    --> src/minmax.rs:108:8
[INFO] [stderr]     |
[INFO] [stderr] 108 | pub fn infinite_search(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `aspiration_search`
[INFO] [stderr]    --> src/minmax.rs:180:4
[INFO] [stderr]     |
[INFO] [stderr] 180 | fn aspiration_search<F>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `alpha_beta_line`
[INFO] [stderr]    --> src/minmax.rs:244:4
[INFO] [stderr]     |
[INFO] [stderr] 244 | fn alpha_beta_line<F>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `alpha_beta`
[INFO] [stderr]    --> src/minmax.rs:280:4
[INFO] [stderr]     |
[INFO] [stderr] 280 | fn alpha_beta<F>(
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `alpha_beta_raw`
[INFO] [stderr]    --> src/minmax.rs:302:4
[INFO] [stderr]     |
[INFO] [stderr] 302 | fn alpha_beta_raw<F>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant is never constructed: `Exact`
[INFO] [stderr]   --> src/ttable.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     Exact(Score),
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `as_approximation`
[INFO] [stderr]   --> src/ttable.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub fn as_approximation(self) -> Score {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `table`
[INFO] [stderr]   --> src/ttable.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     table: Vec<AtomicOption<TEntry>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `put`
[INFO] [stderr]   --> src/ttable.rs:66:5
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub fn put(&self, entry: TEntry) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `fetch`
[INFO] [stderr]   --> src/ttable.rs:81:5
[INFO] [stderr]    |
[INFO] [stderr] 81 |     pub fn fetch(&self, hash: u64) -> Option<TEntry> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `hash_index`
[INFO] [stderr]   --> src/ttable.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     fn hash_index(&self, hash: u64) -> usize {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4m 45s
[INFO] running `"docker" "inspect" "b4d5df3474daac85407a3cf0d0296a0a096d750a71268a34b8d2cbde142304b5"`
[INFO] running `"docker" "rm" "-f" "b4d5df3474daac85407a3cf0d0296a0a096d750a71268a34b8d2cbde142304b5"`
[INFO] [stdout] b4d5df3474daac85407a3cf0d0296a0a096d750a71268a34b8d2cbde142304b5
