[INFO] cloning repository https://github.com/AaronBecker/daydreamer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AaronBecker/daydreamer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAaronBecker%2Fdaydreamer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAaronBecker%2Fdaydreamer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 97e5c323d969b0376e966bb0bf487de44182c32e
[INFO] checking AaronBecker/daydreamer against nightly-2024-02-05 for check-cfg-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAaronBecker%2Fdaydreamer" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/AaronBecker/daydreamer on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/AaronBecker/daydreamer
[INFO] finished tweaking git repo https://github.com/AaronBecker/daydreamer
[INFO] tweaked toml for git repo https://github.com/AaronBecker/daydreamer written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/AaronBecker/daydreamer 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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rand v0.3.14
[INFO] [stderr]   Downloaded lazy_static v0.1.16
[INFO] [stderr]   Downloaded libc v0.2.13
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 49452301ee29e5a108f8066e43f8110a1a1e2e0b6d883498665c955fb7162a2e
[INFO] running `Command { std: "docker" "start" "-a" "49452301ee29e5a108f8066e43f8110a1a1e2e0b6d883498665c955fb7162a2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "49452301ee29e5a108f8066e43f8110a1a1e2e0b6d883498665c955fb7162a2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "49452301ee29e5a108f8066e43f8110a1a1e2e0b6d883498665c955fb7162a2e", kill_on_drop: false }`
[INFO] [stdout] 49452301ee29e5a108f8066e43f8110a1a1e2e0b6d883498665c955fb7162a2e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 684624f282afc2ce5d05437de531565febe8f6e4a21f00d51a247c90e997ef74
[INFO] running `Command { std: "docker" "start" "-a" "684624f282afc2ce5d05437de531565febe8f6e4a21f00d51a247c90e997ef74", kill_on_drop: false }`
[INFO] [stderr]    Compiling daydreamer v2.0.0-pre2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking libc v0.2.13
[INFO] [stderr]     Checking lazy_static v0.1.16
[INFO] [stderr]     Checking rand v0.3.14
[INFO] [stdout] warning: unused macro definition: `hashmap`
[INFO] [stdout]   --> src/macros.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | macro_rules! hashmap {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `board::*`
[INFO] [stdout]    --> src/bitboard.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 596 |     use board::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1106:21
[INFO] [stdout]      |
[INFO] [stdout] 1106 |                     try!(write!(f, "{}", empty));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1112:21
[INFO] [stdout]      |
[INFO] [stdout] 1112 |                     try!(write!(f, "{}", p.glyph()));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1116:25
[INFO] [stdout]      |
[INFO] [stdout] 1116 |                         try!(write!(f, "{}", empty));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1120:25
[INFO] [stdout]      |
[INFO] [stdout] 1120 |                         try!(write!(f, "/"));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `board::*`
[INFO] [stdout]     --> src/position.rs:1178:9
[INFO] [stdout]      |
[INFO] [stdout] 1178 |     use board::*;
[INFO] [stdout]      |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:141:30
[INFO] [stdout]     |
[INFO] [stdout] 141 |             Some(unknown) => try!(make_move(search_data, unknown)),
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |             try!(search_data.pos.load_fen(position::START_FEN));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:163:17
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 try!(search_data.pos.load_fen(fen.as_str()));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:263:21
[INFO] [stdout]     |
[INFO] [stdout] 263 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:278:21
[INFO] [stdout]     |
[INFO] [stdout] 278 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:305:26
[INFO] [stdout]     |
[INFO] [stdout] 305 |                 let mb = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:313:28
[INFO] [stdout]     |
[INFO] [stdout] 313 |                 let c960 = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:319:29
[INFO] [stdout]     |
[INFO] [stdout] 319 |                 let arena = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let mpv = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `hashmap`
[INFO] [stdout]   --> src/macros.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | macro_rules! hashmap {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `chess_test`
[INFO] [stdout]   --> src/macros.rs:76:14
[INFO] [stdout]    |
[INFO] [stdout] 76 | macro_rules! chess_test {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1106:21
[INFO] [stdout]      |
[INFO] [stdout] 1106 |                     try!(write!(f, "{}", empty));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1112:21
[INFO] [stdout]      |
[INFO] [stdout] 1112 |                     try!(write!(f, "{}", p.glyph()));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1116:25
[INFO] [stdout]      |
[INFO] [stdout] 1116 |                         try!(write!(f, "{}", empty));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1120:25
[INFO] [stdout]      |
[INFO] [stdout] 1120 |                         try!(write!(f, "/"));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:141:30
[INFO] [stdout]     |
[INFO] [stdout] 141 |             Some(unknown) => try!(make_move(search_data, unknown)),
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |             try!(search_data.pos.load_fen(position::START_FEN));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:163:17
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 try!(search_data.pos.load_fen(fen.as_str()));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:263:21
[INFO] [stdout]     |
[INFO] [stdout] 263 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:278:21
[INFO] [stdout]     |
[INFO] [stdout] 278 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:305:26
[INFO] [stdout]     |
[INFO] [stdout] 305 |                 let mb = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:313:28
[INFO] [stdout]     |
[INFO] [stdout] 313 |                 let c960 = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:319:29
[INFO] [stdout]     |
[INFO] [stdout] 319 |                 let arena = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let mpv = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules
[INFO] [stdout]  --> src/macros.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules
[INFO] [stdout]  --> src/macros.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/bitboard.rs:5:51
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]   |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/options.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]   |                                           ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]    |                                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:26:48
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/position.rs:66:51
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]    |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/position.rs:146:47
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/bitboard.rs:5:51
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]   |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/options.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]   |                                           ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]    |                                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:26:48
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/position.rs:66:51
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]    |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/position.rs:146:47
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:239:22
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(&mut white_pawn_attacks_bb, &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(addr_of_mut!(white_pawn_attacks_bb), &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:240:22
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(&mut black_pawn_attacks_bb, &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(addr_of_mut!(black_pawn_attacks_bb), &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:241:22
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(&mut knight_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(addr_of_mut!(knight_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(&mut king_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(addr_of_mut!(king_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:50
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { addr_of_mut!(bishop_masks) } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:77
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { addr_of_mut!(rook_masks) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:50
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { addr_of_mut!(bishop_magic) } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:77
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { addr_of_mut!(rook_magic) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:239:22
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(&mut white_pawn_attacks_bb, &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(addr_of_mut!(white_pawn_attacks_bb), &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:240:22
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(&mut black_pawn_attacks_bb, &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(addr_of_mut!(black_pawn_attacks_bb), &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:241:22
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(&mut knight_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(addr_of_mut!(knight_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(&mut king_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(addr_of_mut!(king_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:50
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { addr_of_mut!(bishop_masks) } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:77
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { addr_of_mut!(rook_masks) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:50
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { addr_of_mut!(bishop_magic) } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:77
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { addr_of_mut!(rook_magic) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rank_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:127:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | static mut rank_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RANK_BB`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `file_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | static mut file_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `FILE_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `distance` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | static mut distance: [[u8; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to upper case: `DISTANCE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `neighbor_files_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | static mut neighbor_files_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `NEIGHBOR_FILES_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `in_front_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | static mut in_front_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to upper case: `IN_FRONT_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `passer_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | static mut passer_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to upper case: `PASSER_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `outpost_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | static mut outpost_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `OUTPOST_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `squares_of_color_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | static mut squares_of_color_bb: [Bitboard; 2] = [0; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SQUARES_OF_COLOR_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `white_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | static mut white_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `black_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 220 | static mut black_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `knight_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | static mut knight_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KNIGHT_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | static mut king_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_near_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | static mut king_near_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_NEAR_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 | static mut king_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rank_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:127:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | static mut rank_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RANK_BB`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_halo_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:257:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | static mut king_halo_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_HALO_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | static mut bishop_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | static mut bishop_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | static mut bishop_attacks_bb: [[Bitboard; 512]; 64] = [[0; 512]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:306:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | static mut rook_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `file_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | static mut file_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `FILE_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | static mut rook_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | static mut rook_attacks_bb: [[Bitboard; 4096]; 64] = [[0; 4096]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `distance` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | static mut distance: [[u8; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to upper case: `DISTANCE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `neighbor_files_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | static mut neighbor_files_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `NEIGHBOR_FILES_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `in_front_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | static mut in_front_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to upper case: `IN_FRONT_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:490:12
[INFO] [stdout]     |
[INFO] [stdout] 490 | static mut bishop_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:491:12
[INFO] [stdout]     |
[INFO] [stdout] 491 | static mut rook_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `queen_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:492:12
[INFO] [stdout]     |
[INFO] [stdout] 492 | static mut queen_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `QUEEN_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `passer_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | static mut passer_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to upper case: `PASSER_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `outpost_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | static mut outpost_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `OUTPOST_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `squares_of_color_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | static mut squares_of_color_bb: [Bitboard; 2] = [0; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SQUARES_OF_COLOR_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `white_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | static mut white_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `black_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 220 | static mut black_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `knight_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | static mut knight_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KNIGHT_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | static mut king_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_near_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | static mut king_near_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_NEAR_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 | static mut king_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_halo_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:257:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | static mut king_halo_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_HALO_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | static mut bishop_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | static mut bishop_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | static mut bishop_attacks_bb: [[Bitboard; 512]; 64] = [[0; 512]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:306:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | static mut rook_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | static mut rook_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rays_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:516:12
[INFO] [stdout]     |
[INFO] [stdout] 516 | static mut rays_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RAYS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | static mut rook_attacks_bb: [[Bitboard; 4096]; 64] = [[0; 4096]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `between_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:517:12
[INFO] [stdout]     |
[INFO] [stdout] 517 | static mut between_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `BETWEEN_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:490:12
[INFO] [stdout]     |
[INFO] [stdout] 490 | static mut bishop_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:491:12
[INFO] [stdout]     |
[INFO] [stdout] 491 | static mut rook_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `queen_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:492:12
[INFO] [stdout]     |
[INFO] [stdout] 492 | static mut queen_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `QUEEN_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rays_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:516:12
[INFO] [stdout]     |
[INFO] [stdout] 516 | static mut rays_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RAYS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `between_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:517:12
[INFO] [stdout]     |
[INFO] [stdout] 517 | static mut between_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `BETWEEN_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/perft.rs:52:34
[INFO] [stdout]    |
[INFO] [stdout] 52 |         assert!(count == expect, format!("{}, expected {} got {}", name, expect, count));
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 52 -         assert!(count == expect, format!("{}, expected {} got {}", name, expect, count));
[INFO] [stdout] 52 +         assert!(count == expect, "{}, expected {} got {}", name, expect, count);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `piece_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | static mut piece_random: [[[HashKey; 64]; 7]; 2] = [[[0; 64]; 7]; 2];
[INFO] [stdout]    |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `PIECE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `piece_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | static mut piece_random: [[[HashKey; 64]; 7]; 2] = [[[0; 64]; 7]; 2];
[INFO] [stdout]    |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `PIECE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `castle_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | static mut castle_random: [HashKey; 16] = [0; 16];
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CASTLE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `enpassant_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | static mut enpassant_random: [HashKey; 8] = [0; 8];
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ENPASSANT_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `side_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | static mut side_random: HashKey = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^ help: convert the identifier to upper case: `SIDE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `State` does not permit being left uninitialized
[INFO] [stdout]    --> src/position.rs:146:35
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/position.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     checkers: Bitboard,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `castle_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | static mut castle_random: [HashKey; 16] = [0; 16];
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CASTLE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `enpassant_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | static mut enpassant_random: [HashKey; 8] = [0; 8];
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ENPASSANT_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `side_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | static mut side_random: HashKey = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^ help: convert the identifier to upper case: `SIDE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `State` does not permit being left uninitialized
[INFO] [stdout]    --> src/position.rs:146:35
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/position.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     checkers: Bitboard,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 69 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 67 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1.90s
[INFO] running `Command { std: "docker" "inspect" "684624f282afc2ce5d05437de531565febe8f6e4a21f00d51a247c90e997ef74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "684624f282afc2ce5d05437de531565febe8f6e4a21f00d51a247c90e997ef74", kill_on_drop: false }`
[INFO] [stdout] 684624f282afc2ce5d05437de531565febe8f6e4a21f00d51a247c90e997ef74
[INFO] checking AaronBecker/daydreamer against nightly-2024-02-05+rustflags=-Dunexpected_cfgs+cargoflags=-Zcheck-cfg for check-cfg-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAaronBecker%2Fdaydreamer" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/AaronBecker/daydreamer on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/AaronBecker/daydreamer
[INFO] finished tweaking git repo https://github.com/AaronBecker/daydreamer
[INFO] tweaked toml for git repo https://github.com/AaronBecker/daydreamer written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/AaronBecker/daydreamer 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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e2ac7a40d753550b6dd0d63d0b9e77650731bbf9b8f0153608e69250df11d111
[INFO] running `Command { std: "docker" "start" "-a" "e2ac7a40d753550b6dd0d63d0b9e77650731bbf9b8f0153608e69250df11d111", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e2ac7a40d753550b6dd0d63d0b9e77650731bbf9b8f0153608e69250df11d111", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2ac7a40d753550b6dd0d63d0b9e77650731bbf9b8f0153608e69250df11d111", kill_on_drop: false }`
[INFO] [stdout] e2ac7a40d753550b6dd0d63d0b9e77650731bbf9b8f0153608e69250df11d111
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Dunexpected_cfgs" "-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" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zcheck-cfg", kill_on_drop: false }`
[INFO] [stdout] b874c479b812f6c5e74cc58eca4662ae27ee14525636e4b5ca18f297d4e35aeb
[INFO] running `Command { std: "docker" "start" "-a" "b874c479b812f6c5e74cc58eca4662ae27ee14525636e4b5ca18f297d4e35aeb", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.2.13
[INFO] [stderr]    Compiling daydreamer v2.0.0-pre2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking lazy_static v0.1.16
[INFO] [stderr]     Checking rand v0.3.14
[INFO] [stdout] warning: unused macro definition: `hashmap`
[INFO] [stdout]   --> src/macros.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | macro_rules! hashmap {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> src/board.rs:265:12
[INFO] [stdout]     |
[INFO] [stdout] 265 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `debug_assertions`, `doc`, `doctest`, `feature`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `unix`, `windows`
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout]     = note: requested on the command line with `-D unexpected-cfgs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `board::*`
[INFO] [stdout]    --> src/bitboard.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 596 |     use board::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1106:21
[INFO] [stdout]      |
[INFO] [stdout] 1106 |                     try!(write!(f, "{}", empty));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1112:21
[INFO] [stdout]      |
[INFO] [stdout] 1112 |                     try!(write!(f, "{}", p.glyph()));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1116:25
[INFO] [stdout]      |
[INFO] [stdout] 1116 |                         try!(write!(f, "{}", empty));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1120:25
[INFO] [stdout]      |
[INFO] [stdout] 1120 |                         try!(write!(f, "/"));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `board::*`
[INFO] [stdout]     --> src/position.rs:1178:9
[INFO] [stdout]      |
[INFO] [stdout] 1178 |     use board::*;
[INFO] [stdout]      |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:141:30
[INFO] [stdout]     |
[INFO] [stdout] 141 |             Some(unknown) => try!(make_move(search_data, unknown)),
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |             try!(search_data.pos.load_fen(position::START_FEN));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:163:17
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 try!(search_data.pos.load_fen(fen.as_str()));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:263:21
[INFO] [stdout]     |
[INFO] [stdout] 263 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:278:21
[INFO] [stdout]     |
[INFO] [stdout] 278 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:305:26
[INFO] [stdout]     |
[INFO] [stdout] 305 |                 let mb = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `hashmap`
[INFO] [stdout]   --> src/macros.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | macro_rules! hashmap {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:313:28
[INFO] [stdout]     |
[INFO] [stdout] 313 |                 let c960 = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `chess_test`
[INFO] [stdout]   --> src/macros.rs:76:14
[INFO] [stdout]    |
[INFO] [stdout] 76 | macro_rules! chess_test {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> src/board.rs:265:12
[INFO] [stdout]     |
[INFO] [stdout] 265 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `debug_assertions`, `doc`, `doctest`, `feature`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `unix`, `windows`
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout]     = note: requested on the command line with `-D unexpected-cfgs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:319:29
[INFO] [stdout]     |
[INFO] [stdout] 319 |                 let arena = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let mpv = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1106:21
[INFO] [stdout]      |
[INFO] [stdout] 1106 |                     try!(write!(f, "{}", empty));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1112:21
[INFO] [stdout]      |
[INFO] [stdout] 1112 |                     try!(write!(f, "{}", p.glyph()));
[INFO] [stdout]      |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1116:25
[INFO] [stdout]      |
[INFO] [stdout] 1116 |                         try!(write!(f, "{}", empty));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/position.rs:1120:25
[INFO] [stdout]      |
[INFO] [stdout] 1120 |                         try!(write!(f, "/"));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:141:30
[INFO] [stdout]     |
[INFO] [stdout] 141 |             Some(unknown) => try!(make_move(search_data, unknown)),
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |             try!(search_data.pos.load_fen(position::START_FEN));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:163:17
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 try!(search_data.pos.load_fen(fen.as_str()));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:263:21
[INFO] [stdout]     |
[INFO] [stdout] 263 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:278:21
[INFO] [stdout]     |
[INFO] [stdout] 278 |             let d = try!(depth.parse::<u32>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:305:26
[INFO] [stdout]     |
[INFO] [stdout] 305 |                 let mb = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:313:28
[INFO] [stdout]     |
[INFO] [stdout] 313 |                 let c960 = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:319:29
[INFO] [stdout]     |
[INFO] [stdout] 319 |                 let arena = try!(t.parse::<bool>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/uci.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let mpv = try!(t.parse::<usize>().map_err(|e| e.to_string()));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules
[INFO] [stdout]  --> src/macros.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/bitboard.rs:5:51
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]   |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/options.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]   |                                           ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]    |                                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:26:48
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/position.rs:66:51
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]    |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/position.rs:146:47
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules
[INFO] [stdout]  --> src/macros.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/bitboard.rs:5:51
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 5 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]   |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/eval.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / lazy_static! {
[INFO] [stdout] 133 | |     static ref GLOBAL_PAWN_CACHE: Mutex<PawnCache> = Mutex::new(PawnCache::new(1 << 20));
[INFO] [stdout] 134 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/options.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 3 | static C960: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]   |                                           ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::ATOMIC_BOOL_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 14 | static ARENA_CASTLE: atomic::AtomicBool = atomic::AtomicBool::new(false);
[INFO] [stdout]    |                                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/options.rs:26:48
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 26 | static MULTI_PV: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/position.rs:66:51
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::ONCE_INIT;
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 66 |     static INIT: ::std::sync::Once = ::std::sync::Once::new();
[INFO] [stdout]    |                                                   ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/position.rs:146:47
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/score.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | / lazy_static! {
[INFO] [stdout] 213 | |     pub static ref PSQT: [[PhaseScore; 64]; 15] = init_psqt();
[INFO] [stdout] 214 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:239:22
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(&mut white_pawn_attacks_bb, &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(addr_of_mut!(white_pawn_attacks_bb), &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:240:22
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(&mut black_pawn_attacks_bb, &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(addr_of_mut!(black_pawn_attacks_bb), &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:241:22
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(&mut knight_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(addr_of_mut!(knight_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(&mut king_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(addr_of_mut!(king_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:50
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { addr_of_mut!(bishop_masks) } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:77
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { addr_of_mut!(rook_masks) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:50
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { addr_of_mut!(bishop_magic) } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:77
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { addr_of_mut!(rook_magic) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:239:22
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(&mut white_pawn_attacks_bb, &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]     = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 239 |         init_mundane(addr_of_mut!(white_pawn_attacks_bb), &[NORTHWEST, NORTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:240:22
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(&mut black_pawn_attacks_bb, &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 240 |         init_mundane(addr_of_mut!(black_pawn_attacks_bb), &[SOUTHWEST, SOUTHEAST]);
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:241:22
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(&mut knight_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 241 |         init_mundane(addr_of_mut!(knight_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(&mut king_attacks_bb,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |         init_mundane(addr_of_mut!(king_attacks_bb),
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:50
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { addr_of_mut!(bishop_masks) } else { &mut rook_masks };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:447:77
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { addr_of_mut!(rook_masks) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:50
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { addr_of_mut!(bishop_magic) } else { &mut rook_magic };
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/bitboard.rs:448:77
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { addr_of_mut!(rook_magic) };
[INFO] [stdout]     |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut masks = if pt == PieceType::Bishop { &mut bishop_masks } else { &mut rook_masks };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |     let mut magic = if pt == PieceType::Bishop { &mut bishop_magic } else { &mut rook_magic };
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rank_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:127:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | static mut rank_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RANK_BB`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `file_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | static mut file_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `FILE_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `distance` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | static mut distance: [[u8; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to upper case: `DISTANCE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `neighbor_files_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | static mut neighbor_files_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `NEIGHBOR_FILES_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `in_front_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | static mut in_front_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to upper case: `IN_FRONT_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `passer_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | static mut passer_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to upper case: `PASSER_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `outpost_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | static mut outpost_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `OUTPOST_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `squares_of_color_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | static mut squares_of_color_bb: [Bitboard; 2] = [0; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SQUARES_OF_COLOR_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `white_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | static mut white_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `black_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 220 | static mut black_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `knight_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | static mut knight_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KNIGHT_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | static mut king_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_near_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | static mut king_near_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_NEAR_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 | static mut king_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_halo_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:257:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | static mut king_halo_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_HALO_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | static mut bishop_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | static mut bishop_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | static mut bishop_attacks_bb: [[Bitboard; 512]; 64] = [[0; 512]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:306:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | static mut rook_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | static mut rook_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | static mut rook_attacks_bb: [[Bitboard; 4096]; 64] = [[0; 4096]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:490:12
[INFO] [stdout]     |
[INFO] [stdout] 490 | static mut bishop_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:491:12
[INFO] [stdout]     |
[INFO] [stdout] 491 | static mut rook_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `queen_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:492:12
[INFO] [stdout]     |
[INFO] [stdout] 492 | static mut queen_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `QUEEN_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rays_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:516:12
[INFO] [stdout]     |
[INFO] [stdout] 516 | static mut rays_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RAYS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `between_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:517:12
[INFO] [stdout]     |
[INFO] [stdout] 517 | static mut between_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `BETWEEN_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/perft.rs:52:34
[INFO] [stdout]    |
[INFO] [stdout] 52 |         assert!(count == expect, format!("{}, expected {} got {}", name, expect, count));
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 52 -         assert!(count == expect, format!("{}, expected {} got {}", name, expect, count));
[INFO] [stdout] 52 +         assert!(count == expect, "{}, expected {} got {}", name, expect, count);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `piece_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | static mut piece_random: [[[HashKey; 64]; 7]; 2] = [[[0; 64]; 7]; 2];
[INFO] [stdout]    |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `PIECE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `castle_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | static mut castle_random: [HashKey; 16] = [0; 16];
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CASTLE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `enpassant_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | static mut enpassant_random: [HashKey; 8] = [0; 8];
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ENPASSANT_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `side_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | static mut side_random: HashKey = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^ help: convert the identifier to upper case: `SIDE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `State` does not permit being left uninitialized
[INFO] [stdout]    --> src/position.rs:146:35
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/position.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     checkers: Bitboard,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rank_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:127:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | static mut rank_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RANK_BB`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `file_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | static mut file_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `FILE_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `distance` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | static mut distance: [[u8; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to upper case: `DISTANCE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `neighbor_files_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | static mut neighbor_files_bb: [Bitboard; 8] = [0; 8];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `NEIGHBOR_FILES_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `in_front_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | static mut in_front_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to upper case: `IN_FRONT_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `passer_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | static mut passer_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to upper case: `PASSER_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `outpost_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | static mut outpost_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `OUTPOST_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `squares_of_color_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | static mut squares_of_color_bb: [Bitboard; 2] = [0; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SQUARES_OF_COLOR_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `white_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | static mut white_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `black_pawn_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 220 | static mut black_pawn_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_PAWN_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `knight_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | static mut knight_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KNIGHT_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | static mut king_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_near_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | static mut king_near_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_NEAR_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_shield_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 | static mut king_shield_bb: [[Bitboard; 64]; 2] = [[0; 64]; 2];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_SHIELD_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `king_halo_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:257:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | static mut king_halo_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `KING_HALO_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | static mut bishop_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | static mut bishop_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | static mut bishop_attacks_bb: [[Bitboard; 512]; 64] = [[0; 512]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_masks` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:306:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | static mut rook_masks: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MASKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_magic` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | static mut rook_magic: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_MAGIC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | static mut rook_attacks_bb: [[Bitboard; 4096]; 64] = [[0; 4096]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `bishop_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:490:12
[INFO] [stdout]     |
[INFO] [stdout] 490 | static mut bishop_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rook_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:491:12
[INFO] [stdout]     |
[INFO] [stdout] 491 | static mut rook_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ROOK_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `queen_pseudo_attacks_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:492:12
[INFO] [stdout]     |
[INFO] [stdout] 492 | static mut queen_pseudo_attacks_bb: [Bitboard; 64] = [0; 64];
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `QUEEN_PSEUDO_ATTACKS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `rays_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:516:12
[INFO] [stdout]     |
[INFO] [stdout] 516 | static mut rays_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to upper case: `RAYS_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `between_bb` should have an upper case name
[INFO] [stdout]    --> src/bitboard.rs:517:12
[INFO] [stdout]     |
[INFO] [stdout] 517 | static mut between_bb: [[Bitboard; 64]; 64] = [[0; 64]; 64];
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to upper case: `BETWEEN_BB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `piece_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | static mut piece_random: [[[HashKey; 64]; 7]; 2] = [[[0; 64]; 7]; 2];
[INFO] [stdout]    |            ^^^^^^^^^^^^ help: convert the identifier to upper case: `PIECE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `castle_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | static mut castle_random: [HashKey; 16] = [0; 16];
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CASTLE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `enpassant_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | static mut enpassant_random: [HashKey; 8] = [0; 8];
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ENPASSANT_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `side_random` should have an upper case name
[INFO] [stdout]   --> src/position.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | static mut side_random: HashKey = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^ help: convert the identifier to upper case: `SIDE_RANDOM`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `State` does not permit being left uninitialized
[INFO] [stdout]    --> src/position.rs:146:35
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut undo: State = ::std::mem::uninitialized();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/position.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     checkers: Bitboard,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 67 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 69 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `daydreamer` (bin "daydreamer") due to 2 previous errors; 67 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `daydreamer` (bin "daydreamer" test) due to 2 previous errors; 69 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b874c479b812f6c5e74cc58eca4662ae27ee14525636e4b5ca18f297d4e35aeb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b874c479b812f6c5e74cc58eca4662ae27ee14525636e4b5ca18f297d4e35aeb", kill_on_drop: false }`
[INFO] [stdout] b874c479b812f6c5e74cc58eca4662ae27ee14525636e4b5ca18f297d4e35aeb
