[INFO] cloning repository https://github.com/Jventajas/rust-chess
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jventajas/rust-chess" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJventajas%2Frust-chess", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJventajas%2Frust-chess'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f5b9450dff1acdcade3c94c8670617b19dcd3f20
[INFO] checking Jventajas/rust-chess against try#2b39fe756f52bc2825bf5b2bfc385cab922dae10 for pr-143011
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJventajas%2Frust-chess" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Jventajas/rust-chess
[INFO] finished tweaking git repo https://github.com/Jventajas/rust-chess
[INFO] tweaked toml for git repo https://github.com/Jventajas/rust-chess written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Jventajas/rust-chess on toolchain 2b39fe756f52bc2825bf5b2bfc385cab922dae10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Jventajas/rust-chess 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" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "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] 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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a162819d65dca57c55815302c5b9ddae662d3e8999f1543eb650d9433939f797
[INFO] running `Command { std: "docker" "start" "-a" "a162819d65dca57c55815302c5b9ddae662d3e8999f1543eb650d9433939f797", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a162819d65dca57c55815302c5b9ddae662d3e8999f1543eb650d9433939f797", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a162819d65dca57c55815302c5b9ddae662d3e8999f1543eb650d9433939f797", kill_on_drop: false }`
[INFO] [stdout] a162819d65dca57c55815302c5b9ddae662d3e8999f1543eb650d9433939f797
[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" "-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 784ba4ae3e0c8f8b85cd94e9e41cf57265922713215d6fc93b8fdb2ac2bacca2
[INFO] running `Command { std: "docker" "start" "-a" "784ba4ae3e0c8f8b85cd94e9e41cf57265922713215d6fc93b8fdb2ac2bacca2", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.0
[INFO] [stderr]     Checking rust-chess v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0277]: `Move` doesn't implement `Debug`
[INFO] [stdout]   --> src/game.rs:53:63
[INFO] [stdout]    |
[INFO] [stdout] 53 |             return Err(format!("Illegal move selected: {:?}", move_));
[INFO] [stdout]    |                                                        ----   ^^^^^ `Move` cannot be formatted using `{:?}` because it doesn't implement `Debug`
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Debug` is not implemented for `Move`
[INFO] [stdout]    = note: add `#[derive(Debug)]` to `Move` or manually `impl Debug for Move`
[INFO] [stdout]    = note: required for `&Move` to implement `Debug`
[INFO] [stdout]    = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Move` doesn't implement `Debug`
[INFO] [stdout]   --> src/game.rs:53:63
[INFO] [stdout]    |
[INFO] [stdout] 53 |             return Err(format!("Illegal move selected: {:?}", move_));
[INFO] [stdout]    |                                                        ----   ^^^^^ `Move` cannot be formatted using `{:?}` because it doesn't implement `Debug`
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Debug` is not implemented for `Move`
[INFO] [stdout]    = note: add `#[derive(Debug)]` to `Move` or manually `impl Debug for Move`
[INFO] [stdout]    = note: required for `&Move` to implement `Debug`
[INFO] [stdout]    = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]  --> src/move_validator.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for sq in 0..64 {
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:82:15
[INFO] [stdout]    |
[INFO] [stdout] 82 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:99:15
[INFO] [stdout]    |
[INFO] [stdout] 99 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:113:15
[INFO] [stdout]     |
[INFO] [stdout] 113 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]  --> src/move_validator.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for sq in 0..64 {
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:128:15
[INFO] [stdout]     |
[INFO] [stdout] 128 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<i32>` in constants
[INFO] [stdout]    --> src/move_validator.rs:131:18
[INFO] [stdout]     |
[INFO] [stdout] 131 |         for _ in 0..7 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<i32>` in constants
[INFO] [stdout]    --> src/move_validator.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout] 146 |         for _ in 0..7 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:158:15
[INFO] [stdout]     |
[INFO] [stdout] 158 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:162:18
[INFO] [stdout]     |
[INFO] [stdout] 162 |         for _ in 0..(7 - file) { // Stop at the H file
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:82:15
[INFO] [stdout]    |
[INFO] [stdout] 82 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:174:15
[INFO] [stdout]     |
[INFO] [stdout] 174 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:178:18
[INFO] [stdout]     |
[INFO] [stdout] 178 |         for _ in 0..file { // Stop at the A file
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:190:15
[INFO] [stdout]     |
[INFO] [stdout] 190 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]   --> src/move_validator.rs:99:15
[INFO] [stdout]    |
[INFO] [stdout] 99 |     for sq in 0..64 {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:209:15
[INFO] [stdout]     |
[INFO] [stdout] 209 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:113:15
[INFO] [stdout]     |
[INFO] [stdout] 113 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:228:15
[INFO] [stdout]     |
[INFO] [stdout] 228 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:128:15
[INFO] [stdout]     |
[INFO] [stdout] 128 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<i32>` in constants
[INFO] [stdout]    --> src/move_validator.rs:131:18
[INFO] [stdout]     |
[INFO] [stdout] 131 |         for _ in 0..7 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:247:15
[INFO] [stdout]     |
[INFO] [stdout] 247 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<i32>` in constants
[INFO] [stdout]    --> src/move_validator.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout] 146 |         for _ in 0..7 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `Vec<Move>` cannot be built from an iterator over elements of type `&Move`
[INFO] [stdout]    --> src/move_validator.rs:281:14
[INFO] [stdout]     |
[INFO] [stdout] 281 |             .collect()
[INFO] [stdout]     |              ^^^^^^^ value of type `Vec<Move>` cannot be built from `std::iter::Iterator<Item=&Move>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromIterator<&Move>` is not implemented for `Vec<Move>`
[INFO] [stdout]             but trait `FromIterator<Move>` is implemented for it
[INFO] [stdout]     = help: for that trait implementation, expected `Move`, found `&Move`
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]    --> /rustc/2b39fe756f52bc2825bf5b2bfc385cab922dae10/library/core/src/iter/traits/iterator.rs:2014:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:158:15
[INFO] [stdout]     |
[INFO] [stdout] 158 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:162:18
[INFO] [stdout]     |
[INFO] [stdout] 162 |         for _ in 0..(7 - file) { // Stop at the H file
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[u64]` cannot be indexed by `u8`
[INFO] [stdout]    --> src/move_validator.rs:345:54
[INFO] [stdout]     |
[INFO] [stdout] 345 |             let knight_moves_bitboard = KNIGHT_MOVES[knight_pos];
[INFO] [stdout]     |                                                      ^^^^^^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `SliceIndex<[u64]>` is not implemented for `u8`
[INFO] [stdout]     = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]               `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]               `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]     = note: required for `[u64]` to implement `Index<u8>`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `[u64; 64]` to implement `Index<u8>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:174:15
[INFO] [stdout]     |
[INFO] [stdout] 174 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:178:18
[INFO] [stdout]     |
[INFO] [stdout] 178 |         for _ in 0..file { // Stop at the A file
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:190:15
[INFO] [stdout]     |
[INFO] [stdout] 190 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:209:15
[INFO] [stdout]     |
[INFO] [stdout] 209 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:228:15
[INFO] [stdout]     |
[INFO] [stdout] 228 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot use `for` loop on `std::ops::Range<usize>` in constants
[INFO] [stdout]    --> src/move_validator.rs:247:15
[INFO] [stdout]     |
[INFO] [stdout] 247 |     for sq in 0..64 {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `Vec<Move>` cannot be built from an iterator over elements of type `&Move`
[INFO] [stdout]    --> src/move_validator.rs:281:14
[INFO] [stdout]     |
[INFO] [stdout] 281 |             .collect()
[INFO] [stdout]     |              ^^^^^^^ value of type `Vec<Move>` cannot be built from `std::iter::Iterator<Item=&Move>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromIterator<&Move>` is not implemented for `Vec<Move>`
[INFO] [stdout]             but trait `FromIterator<Move>` is implemented for it
[INFO] [stdout]     = help: for that trait implementation, expected `Move`, found `&Move`
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]    --> /rustc/2b39fe756f52bc2825bf5b2bfc385cab922dae10/library/core/src/iter/traits/iterator.rs:2014:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[u64]` cannot be indexed by `u8`
[INFO] [stdout]    --> src/move_validator.rs:345:54
[INFO] [stdout]     |
[INFO] [stdout] 345 |             let knight_moves_bitboard = KNIGHT_MOVES[knight_pos];
[INFO] [stdout]     |                                                      ^^^^^^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `SliceIndex<[u64]>` is not implemented for `u8`
[INFO] [stdout]     = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]               `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]               `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]     = note: required for `[u64]` to implement `Index<u8>`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `[u64; 64]` to implement `Index<u8>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `find_first_blocker_index` found for reference `&MoveValidator` in the current scope
[INFO] [stdout]    --> src/move_validator.rs:550:40
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let first_blocker_index = self.find_first_blocker_index(ray, blockers);
[INFO] [stdout]     |                                   -----^^^^^^^^^^^^^^^^^^^^^^^^---------------
[INFO] [stdout]     |                                   |    |
[INFO] [stdout]     |                                   |    this is an associated function, not a method
[INFO] [stdout]     |                                   help: use associated function syntax instead: `MoveValidator::find_first_blocker_index(ray, blockers)`
[INFO] [stdout]     |
[INFO] [stdout]     = note: found the following associated functions; to be used as methods, functions must have a `self` parameter
[INFO] [stdout] note: the candidate is defined in an impl for the type `MoveValidator`
[INFO] [stdout]    --> src/move_validator.rs:605:5
[INFO] [stdout]     |
[INFO] [stdout] 605 |     fn find_first_blocker_index(ray: u64, blockers: u64, reference_sq: u8) -> u32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `white_queens` on type `&Board`
[INFO] [stdout]    --> src/move_validator.rs:574:36
[INFO] [stdout]     |
[INFO] [stdout] 574 |             Color::White => (board.white_queens, board.black_pieces()),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 574 -             Color::White => (board.white_queens, board.black_pieces()),
[INFO] [stdout] 574 +             Color::White => (board.white_queen, board.black_pieces()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `black_queens` on type `&Board`
[INFO] [stdout]    --> src/move_validator.rs:575:36
[INFO] [stdout]     |
[INFO] [stdout] 575 |             Color::Black => (board.black_queens, board.white_pieces()),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 575 -             Color::Black => (board.black_queens, board.white_pieces()),
[INFO] [stdout] 575 +             Color::Black => (board.black_queen, board.white_pieces()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_validator.rs:284:40
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub(crate) fn is_move_legal(&self, board: &Board, move_: &Move) -> bool {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_`
[INFO] [stdout]    --> src/move_validator.rs:284:55
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub(crate) fn is_move_legal(&self, board: &Board, move_: &Move) -> bool {
[INFO] [stdout]     |                                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_move_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `potential_pushes`
[INFO] [stdout]    --> src/move_validator.rs:394:17
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let potential_pushes = match color {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_potential_pushes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `find_first_blocker_index` found for reference `&MoveValidator` in the current scope
[INFO] [stdout]    --> src/move_validator.rs:550:40
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let first_blocker_index = self.find_first_blocker_index(ray, blockers);
[INFO] [stdout]     |                                   -----^^^^^^^^^^^^^^^^^^^^^^^^---------------
[INFO] [stdout]     |                                   |    |
[INFO] [stdout]     |                                   |    this is an associated function, not a method
[INFO] [stdout]     |                                   help: use associated function syntax instead: `MoveValidator::find_first_blocker_index(ray, blockers)`
[INFO] [stdout]     |
[INFO] [stdout]     = note: found the following associated functions; to be used as methods, functions must have a `self` parameter
[INFO] [stdout] note: the candidate is defined in an impl for the type `MoveValidator`
[INFO] [stdout]    --> src/move_validator.rs:605:5
[INFO] [stdout]     |
[INFO] [stdout] 605 |     fn find_first_blocker_index(ray: u64, blockers: u64, reference_sq: u8) -> u32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `white_queens` on type `&Board`
[INFO] [stdout]    --> src/move_validator.rs:574:36
[INFO] [stdout]     |
[INFO] [stdout] 574 |             Color::White => (board.white_queens, board.black_pieces()),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 574 -             Color::White => (board.white_queens, board.black_pieces()),
[INFO] [stdout] 574 +             Color::White => (board.white_queen, board.black_pieces()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `black_queens` on type `&Board`
[INFO] [stdout]    --> src/move_validator.rs:575:36
[INFO] [stdout]     |
[INFO] [stdout] 575 |             Color::Black => (board.black_queens, board.white_pieces()),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 575 -             Color::Black => (board.black_queens, board.white_pieces()),
[INFO] [stdout] 575 +             Color::Black => (board.black_queen, board.white_pieces()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0015, E0277, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0015`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_validator.rs:284:40
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub(crate) fn is_move_legal(&self, board: &Board, move_: &Move) -> bool {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_`
[INFO] [stdout]    --> src/move_validator.rs:284:55
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub(crate) fn is_move_legal(&self, board: &Board, move_: &Move) -> bool {
[INFO] [stdout]     |                                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_move_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `potential_pushes`
[INFO] [stdout]    --> src/move_validator.rs:394:17
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let potential_pushes = match color {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_potential_pushes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-chess` (lib test) due to 24 previous errors; 3 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0015, E0277, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0015`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-chess` (lib) due to 24 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "784ba4ae3e0c8f8b85cd94e9e41cf57265922713215d6fc93b8fdb2ac2bacca2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "784ba4ae3e0c8f8b85cd94e9e41cf57265922713215d6fc93b8fdb2ac2bacca2", kill_on_drop: false }`
[INFO] [stdout] 784ba4ae3e0c8f8b85cd94e9e41cf57265922713215d6fc93b8fdb2ac2bacca2
