[INFO] fetching crate stockfish-core 0.2.0...
[INFO] testing stockfish-core-0.2.0 against 1.90.0 for beta-1.91-3
[INFO] extracting crate stockfish-core 0.2.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate stockfish-core 0.2.0
[INFO] finished tweaking crates.io crate stockfish-core 0.2.0
[INFO] tweaked toml for crates.io crate stockfish-core 0.2.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate stockfish-core 0.2.0 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate stockfish-core 0.2.0 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" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.49
[INFO] [stderr]   Downloaded ciborium-ll v0.2.0
[INFO] [stderr]   Downloaded paste v1.0.11
[INFO] [stderr]   Downloaded ciborium-io v0.2.0
[INFO] [stderr]   Downloaded ciborium v0.2.0
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.13
[INFO] [stderr]   Downloaded bytemuck v1.12.3
[INFO] [stderr]   Downloaded rayon-core v1.10.1
[INFO] [stderr]   Downloaded serde_json v1.0.91
[INFO] [stderr]   Downloaded rayon v1.6.1
[INFO] [stderr]   Downloaded clap v3.2.23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fbee030ebf30655b3a70ea0d35db5ab54d6bfd713f852bd4a925cc72309aee11
[INFO] running `Command { std: "docker" "start" "-a" "fbee030ebf30655b3a70ea0d35db5ab54d6bfd713f852bd4a925cc72309aee11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fbee030ebf30655b3a70ea0d35db5ab54d6bfd713f852bd4a925cc72309aee11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fbee030ebf30655b3a70ea0d35db5ab54d6bfd713f852bd4a925cc72309aee11", kill_on_drop: false }`
[INFO] [stdout] fbee030ebf30655b3a70ea0d35db5ab54d6bfd713f852bd4a925cc72309aee11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0e2a7cd78aeacf5471c759b34afc345be102ee35dc93d7018ead95aeda248420
[INFO] running `Command { std: "docker" "start" "-a" "0e2a7cd78aeacf5471c759b34afc345be102ee35dc93d7018ead95aeda248420", kill_on_drop: false }`
[INFO] [stderr]    Compiling bytemuck v1.12.3
[INFO] [stderr]    Compiling stockfish-core v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> src/lib.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 | #![feature(no_coverage)]
[INFO] [stdout]    |            ^^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: removed in 1.74.0; see <https://github.com/rust-lang/rust/pull/114656> for more information
[INFO] [stdout]    = note: renamed to `coverage_attribute`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: meta-variables within meta-variable expressions must be referenced using a dollar sign
[INFO] [stdout]   --> src/core.rs:22:60
[INFO] [stdout]    |
[INFO] [stdout] 22 |             $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: meta-variables within meta-variable expressions must be referenced using a dollar sign
[INFO] [stdout]   --> src/core.rs:67:63
[INFO] [stdout]    |
[INFO] [stdout] 67 |             $vis fn iter() -> ::core::array::IntoIter<Self, ${count(var)}> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]  5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]  6 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]  5 | |     /// and the side to which castling will occur.
[INFO] [stdout]  6 | |     pub CastlingVariety, [
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/color.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]  7 | |     pub Color, [ White, Black ]
[INFO] [stdout]  8 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/file.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]  8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]  9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enumeration! {
[INFO] [stdout] 19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout] 20 | |     ///
[INFO] [stdout] 21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout] 22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout] 23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / enumeration! {
[INFO] [stdout] 27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout] 28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout] 29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/piece.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / enumeration! {
[INFO] [stdout]  5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]  6 | |     /// token.
[INFO] [stdout]  7 | |     ///
[INFO] [stdout] ...  |
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/rank.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]  8 | |     /// number.
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/square.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A square on a chess board.
[INFO] [stdout]  7 | |     pub Square, [
[INFO] [stdout]  8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]   --> src/core.rs:22:58
[INFO] [stdout]    |
[INFO] [stdout] 20 |           impl $name {
[INFO] [stdout]    |                      - while parsing this item list starting here
[INFO] [stdout] 21 |               /// The total number of [`$name`]s.
[INFO] [stdout] 22 |               $vis const COUNT: ::core::primitive::usize = ${count(var)};
[INFO] [stdout]    |                                                            ^ expected expression
[INFO] [stdout] ...
[INFO] [stdout] 91 |           }
[INFO] [stdout]    |           - the item list ends here
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/token.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]  6 | |     pub Token, [
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:73:1
[INFO] [stdout]    |
[INFO] [stdout] 73 | #![feature(const_cmp)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | #![feature(const_convert)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | #![feature(const_default_impls)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | #![feature(const_discriminant)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | #![feature(const_mut_refs)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the attribute
[INFO] [stdout]    |
[INFO] [stdout]    = help: the feature `const_mut_refs` has been stable since `1.83.0` and no longer requires an attribute to enable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:78:1
[INFO] [stdout]    |
[INFO] [stdout] 78 | #![feature(const_ops)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:79:1
[INFO] [stdout]    |
[INFO] [stdout] 79 | #![feature(const_option)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:80:1
[INFO] [stdout]    |
[INFO] [stdout] 80 | #![feature(const_trait_impl)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:81:1
[INFO] [stdout]    |
[INFO] [stdout] 81 | #![feature(const_try)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:82:1
[INFO] [stdout]    |
[INFO] [stdout] 82 | #![feature(const_slice_index)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:83:1
[INFO] [stdout]    |
[INFO] [stdout] 83 | #![feature(derive_const)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 84 | #![feature(is_sorted)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | #![feature(macro_metavar_expr)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:86:1
[INFO] [stdout]    |
[INFO] [stdout] 86 | #![feature(no_coverage)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | #![feature(rustdoc_missing_doc_code_examples)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> src/lib.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | #![feature(strict_provenance)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `fuzzy_provenance_casts`
[INFO] [stdout]   --> src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![warn(fuzzy_provenance_casts)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the `fuzzy_provenance_casts` lint is unstable
[INFO] [stdout]    = note: see issue #130351 <https://github.com/rust-lang/rust/issues/130351> for more information
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `lossy_provenance_casts`
[INFO] [stdout]   --> src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | #![warn(lossy_provenance_casts)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the `lossy_provenance_casts` lint is unstable
[INFO] [stdout]    = note: see issue #130351 <https://github.com/rust-lang/rust/issues/130351> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]   --> src/arch.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[cfg(use_pext)]
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]   --> src/arch.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg(not(use_pext))]
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]   --> src/bitboard/magic.rs:70:23
[INFO] [stdout]    |
[INFO] [stdout] 70 |             #[cfg(not(use_pext))] {
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]   --> src/bitboard/magic.rs:65:23
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 #[cfg(use_pext)] {
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]    --> src/bitboard/magic.rs:212:11
[INFO] [stdout]     |
[INFO] [stdout] 212 |     #[cfg(use_pext)]
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]    --> src/bitboard/magic.rs:219:48
[INFO] [stdout]     |
[INFO] [stdout] 219 |     #[cfg(all(target_pointer_width = "64", not(use_pext)))]
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `use_pext`
[INFO] [stdout]    --> src/bitboard/magic.rs:232:48
[INFO] [stdout]     |
[INFO] [stdout] 232 |     #[cfg(all(target_pointer_width = "32", not(use_pext)))]
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(use_pext)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(use_pext)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/bitboard/magic.rs:203:10
[INFO] [stdout]     |
[INFO] [stdout] 203 |         (std::mem::size_of::<usize>() * 8) - mask.count()
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:31:9
[INFO] [stdout]     |
[INFO] [stdout]  31 | #![warn(unused_qualifications)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 203 -         (std::mem::size_of::<usize>() * 8) - mask.count()
[INFO] [stdout] 203 +         (size_of::<usize>() * 8) - mask.count()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `coverage`
[INFO] [stdout]    --> src/bitboard.rs:229:16
[INFO] [stdout]     |
[INFO] [stdout] 229 |     #[cfg_attr(coverage, no_coverage)]
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(coverage)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(coverage)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `coverage`
[INFO] [stdout]   --> src/core/board.rs:67:16
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[cfg_attr(coverage, no_coverage)]
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(coverage)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(coverage)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_mut_refs` has been stable since 1.83.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | #![feature(const_mut_refs)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_discriminant` has been stable since 1.75.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | #![feature(const_discriminant)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_option` has been stable since 1.83.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | #![feature(const_option)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `is_sorted` has been stable since 1.82.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | #![feature(is_sorted)]
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `strict_provenance` has been stable since 1.84.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:88:12
[INFO] [stdout]    |
[INFO] [stdout] 88 | #![feature(strict_provenance)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `const_slice_index`
[INFO] [stdout]   --> src/lib.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | #![feature(const_slice_index)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `const_convert`
[INFO] [stdout]   --> src/lib.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | #![feature(const_convert)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `const_default_impls`
[INFO] [stdout]   --> src/lib.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | #![feature(const_default_impls)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/misc/prng.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | #![warn(unused)]
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/misc/prng.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/misc/prng.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl const From<u64> for Prng {
[INFO] [stdout]    |            ^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/bitboard.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, PartialEq, PartialOrd, Ord)]
[INFO] [stdout]    |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/bitboard.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | impl const From<u64> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/bitboard.rs:262:12
[INFO] [stdout]     |
[INFO] [stdout] 262 | impl const From<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/bitboard.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 278 | impl const From<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/bitboard.rs:294:12
[INFO] [stdout]     |
[INFO] [stdout] 294 | impl const From<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/bitboard/magic.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive_const(Clone, PartialEq)]
[INFO] [stdout]    |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]  --> src/core/board.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive_const(Clone)]
[INFO] [stdout]   |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]   --> src/core/board.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl const Index<usize> for Board {
[INFO] [stdout]    |            ^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]   --> src/core/board.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl const IndexMut<usize> for Board {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]   --> src/core/board.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl const Index<Square> for Board {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]   --> src/core/board.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl const IndexMut<Square> for Board {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]  --> src/core/castling/castling_path.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive_const(Clone, PartialEq)]
[INFO] [stdout]   |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_default`
[INFO] [stdout]   --> src/core/castling/castling_rights.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |     #[derive_const(Default)]
[INFO] [stdout]    |                    ^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143894 <https://github.com/rust-lang/rust/issues/143894> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]  5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]  6 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]  5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]  6 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]  5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]  6 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]  5 | |     /// and the side to which castling will occur.
[INFO] [stdout]  6 | |     pub CastlingVariety, [
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]  5 | |     /// and the side to which castling will occur.
[INFO] [stdout]  6 | |     pub CastlingVariety, [
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]  5 | |     /// and the side to which castling will occur.
[INFO] [stdout]  6 | |     pub CastlingVariety, [
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/color.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]  7 | |     pub Color, [ White, Black ]
[INFO] [stdout]  8 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/color.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]  7 | |     pub Color, [ White, Black ]
[INFO] [stdout]  8 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/color.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]  7 | |     pub Color, [ White, Black ]
[INFO] [stdout]  8 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core/direction.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]  --> src/core/direction.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive_const(Clone, PartialEq)]
[INFO] [stdout]   |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core/direction.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl const From<Direction> for i8 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/file.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]  8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]  9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core/file.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/file.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]  8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]  9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/file.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]  8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]  9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core/file.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl const From<File> for char {
[INFO] [stdout]    |            ^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core/file.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl const From<Square> for File {
[INFO] [stdout]    |            ^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enumeration! {
[INFO] [stdout] 19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout] 20 | |     ///
[INFO] [stdout] 21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout] 22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout] 23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / enumeration! {
[INFO] [stdout] 27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout] 28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout] 29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core/move.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive_const(Clone)]
[INFO] [stdout]    |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enumeration! {
[INFO] [stdout] 19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout] 20 | |     ///
[INFO] [stdout] 21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout] 22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout] 23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enumeration! {
[INFO] [stdout] 19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout] 20 | |     ///
[INFO] [stdout] 21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout] 22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout] 23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / enumeration! {
[INFO] [stdout] 27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout] 28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout] 29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / enumeration! {
[INFO] [stdout] 27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout] 28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout] 29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/piece.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / enumeration! {
[INFO] [stdout]  5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]  6 | |     /// token.
[INFO] [stdout]  7 | |     ///
[INFO] [stdout] ...  |
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | / enumeration! {
[INFO] [stdout]   5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |     /// token.
[INFO] [stdout]   7 | |     ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/piece.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / enumeration! {
[INFO] [stdout]  5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]  6 | |     /// token.
[INFO] [stdout]  7 | |     ///
[INFO] [stdout] ...  |
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/piece.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / enumeration! {
[INFO] [stdout]  5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]  6 | |     /// token.
[INFO] [stdout]  7 | |     ///
[INFO] [stdout] ...  |
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | / enumeration! {
[INFO] [stdout]   5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |     /// token.
[INFO] [stdout]   7 | |     ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | / enumeration! {
[INFO] [stdout]   5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |     /// token.
[INFO] [stdout]   7 | |     ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core/piece.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl const From<Piece> for char {
[INFO] [stdout]     |            ^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core/piece.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | impl const From<Piece> for Color {
[INFO] [stdout]     |            ^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core/piece.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl const From<Piece> for Token {
[INFO] [stdout]     |            ^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/rank.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]  8 | |     /// number.
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core/rank.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/rank.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]  8 | |     /// number.
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/rank.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]  8 | |     /// number.
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core/rank.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl const From<Rank> for char {
[INFO] [stdout]    |            ^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core/rank.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl const From<Square> for Rank {
[INFO] [stdout]    |            ^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]  --> src/core/ruleset.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive_const(Clone, PartialEq)]
[INFO] [stdout]   |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/square.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A square on a chess board.
[INFO] [stdout]  7 | |     pub Square, [
[INFO] [stdout]  8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A square on a chess board.
[INFO] [stdout]   7 | |     pub Square, [
[INFO] [stdout]   8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core/square.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/square.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A square on a chess board.
[INFO] [stdout]  7 | |     pub Square, [
[INFO] [stdout]  8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/square.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A square on a chess board.
[INFO] [stdout]  7 | |     pub Square, [
[INFO] [stdout]  8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A square on a chess board.
[INFO] [stdout]   7 | |     pub Square, [
[INFO] [stdout]   8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A square on a chess board.
[INFO] [stdout]   7 | |     pub Square, [
[INFO] [stdout]   8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]   --> src/core.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |               #[must_use]
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/token.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]  6 | |     pub Token, [
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method
[INFO] [stdout]    --> src/core.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |               #[must_use]
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/core.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |           #[derive_const(::core::clone::Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/token.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]  6 | |     pub Token, [
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout]    = note: this error originates in the derive macro `::core::clone::Clone` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/core.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |           impl const ::core::convert::From<$name> for ::core::primitive::u8 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/token.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]  6 | |     pub Token, [
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]    = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]    --> src/core.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |           impl const ::core::convert::From<$name> for ::core::primitive::usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_index`
[INFO] [stdout]    --> src/core.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #143775 <https://github.com/rust-lang/rust/issues/143775> for more information
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_clone`
[INFO] [stdout]   --> src/hash.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, Default, PartialEq)]
[INFO] [stdout]    |                ^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #142757 <https://github.com/rust-lang/rust/issues/142757> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_default`
[INFO] [stdout]   --> src/hash.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, Default, PartialEq)]
[INFO] [stdout]    |                       ^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143894 <https://github.com/rust-lang/rust/issues/143894> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable const library feature `const_from`
[INFO] [stdout]   --> src/hash.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl const From<u64> for Key {
[INFO] [stdout]    |            ^^^^^^^^^ trait is not stable as const yet
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #143773 <https://github.com/rust-lang/rust/issues/143773> for more information
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:52:38
[INFO] [stdout]    |
[INFO] [stdout] 52 |   const SQUARE_DISTANCE: [[u8; Square::COUNT]; Square::COUNT] = cached!("square_distance");
[INFO] [stdout]    |                                        ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:52:54
[INFO] [stdout]    |
[INFO] [stdout] 52 |   const SQUARE_DISTANCE: [[u8; Square::COUNT]; Square::COUNT] = cached!("square_distance");
[INFO] [stdout]    |                                                        ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:55:33
[INFO] [stdout]    |
[INFO] [stdout] 55 |   const LINE: [[Bitboard; Square::COUNT]; Square::COUNT] = cached!("line");
[INFO] [stdout]    |                                   ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:55:49
[INFO] [stdout]    |
[INFO] [stdout] 55 |   const LINE: [[Bitboard; Square::COUNT]; Square::COUNT] = cached!("line");
[INFO] [stdout]    |                                                   ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:58:36
[INFO] [stdout]    |
[INFO] [stdout] 58 |   const BETWEEN: [[Bitboard; Square::COUNT]; Square::COUNT] = cached!("between");
[INFO] [stdout]    |                                      ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:58:52
[INFO] [stdout]    |
[INFO] [stdout] 58 |   const BETWEEN: [[Bitboard; Square::COUNT]; Square::COUNT] = cached!("between");
[INFO] [stdout]    |                                                      ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:61:43
[INFO] [stdout]    |
[INFO] [stdout] 61 |   const PSEUDO_ATTACKS: [[Bitboard; Square::COUNT]; Token::COUNT] = cached!("pseudo_attacks");
[INFO] [stdout]    |                                             ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `token::Token` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:61:58
[INFO] [stdout]    |
[INFO] [stdout] 61 |   const PSEUDO_ATTACKS: [[Bitboard; Square::COUNT]; Token::COUNT] = cached!("pseudo_attacks");
[INFO] [stdout]    |                                                            ^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:64:41
[INFO] [stdout]    |
[INFO] [stdout] 64 |   const PAWN_ATTACKS: [[Bitboard; Square::COUNT]; Color::COUNT] = cached!("pawn_attacks");
[INFO] [stdout]    |                                           ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/accelerate/cached.rs:64:56
[INFO] [stdout]    |
[INFO] [stdout] 64 |   const PAWN_ATTACKS: [[Bitboard; Square::COUNT]; Color::COUNT] = cached!("pawn_attacks");
[INFO] [stdout]    |                                                          ^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/bitboard/magic.rs:8:40
[INFO] [stdout]    |
[INFO] [stdout]  8 |       pub magics:  [MagicSquare; Square::COUNT],
[INFO] [stdout]    |                                          ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/board.rs:11:42
[INFO] [stdout]    |
[INFO] [stdout] 11 |   pub struct Board([Option<Piece>; Square::COUNT]);
[INFO] [stdout]    |                                            ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `PartialOrd` which is not `const`
[INFO] [stdout]   --> src/bitboard.rs:24:34
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, PartialEq, PartialOrd, Ord)]
[INFO] [stdout]    |                                  ^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `PartialOrd` which is not `const`
[INFO] [stdout]  --> src/core/file.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                         ^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]   |
[INFO] [stdout]   = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]   = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `PartialOrd` which is not `const`
[INFO] [stdout]  --> src/core/rank.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                         ^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]   |
[INFO] [stdout]   = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]   = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Ord` which is not `const`
[INFO] [stdout]   --> src/bitboard.rs:24:46
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, PartialEq, PartialOrd, Ord)]
[INFO] [stdout]    |                                              ^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Ord` which is not `const`
[INFO] [stdout]  --> src/core/file.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                    ^^^ this trait is not `const`
[INFO] [stdout]   |
[INFO] [stdout]   = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]   = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Ord` which is not `const`
[INFO] [stdout]  --> src/core/rank.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                    ^^^ this trait is not `const`
[INFO] [stdout]   |
[INFO] [stdout]   = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]   = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl const BitAnd<Self> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 | impl const BitAnd<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:333:12
[INFO] [stdout]     |
[INFO] [stdout] 333 | impl const BitAnd<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 349 | impl const BitAnd<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAnd` which is not `const`
[INFO] [stdout]    --> src/core/square.rs:178:12
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl const BitAnd for Square {
[INFO] [stdout]     |            ^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAndAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:310:12
[INFO] [stdout]     |
[INFO] [stdout] 310 | impl const BitAndAssign<Self> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAndAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:326:12
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl const BitAndAssign<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAndAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:342:12
[INFO] [stdout]     |
[INFO] [stdout] 342 | impl const BitAndAssign<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitAndAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:358:12
[INFO] [stdout]     |
[INFO] [stdout] 358 | impl const BitAndAssign<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:365:12
[INFO] [stdout]     |
[INFO] [stdout] 365 | impl const BitOr<Self> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 381 | impl const BitOr<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:397:12
[INFO] [stdout]     |
[INFO] [stdout] 397 | impl const BitOr<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:413:12
[INFO] [stdout]     |
[INFO] [stdout] 413 | impl const BitOr<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]   --> src/core/file.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl const BitOr<Self> for File {
[INFO] [stdout]    |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]   --> src/core/file.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl const BitOr<Rank> for File {
[INFO] [stdout]    |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]   --> src/core/rank.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl const BitOr<Self> for Rank {
[INFO] [stdout]    |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]   --> src/core/rank.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 | impl const BitOr<File> for Rank {
[INFO] [stdout]    |            ^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOr` which is not `const`
[INFO] [stdout]    --> src/core/square.rs:188:12
[INFO] [stdout]     |
[INFO] [stdout] 188 | impl const BitOr for Square {
[INFO] [stdout]     |            ^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOrAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:374:12
[INFO] [stdout]     |
[INFO] [stdout] 374 | impl const BitOrAssign<Self> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOrAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:390:12
[INFO] [stdout]     |
[INFO] [stdout] 390 | impl const BitOrAssign<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOrAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:406:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl const BitOrAssign<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitOrAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:422:12
[INFO] [stdout]     |
[INFO] [stdout] 422 | impl const BitOrAssign<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:429:12
[INFO] [stdout]     |
[INFO] [stdout] 429 | impl const BitXor<Self> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:445:12
[INFO] [stdout]     |
[INFO] [stdout] 445 | impl const BitXor<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:461:12
[INFO] [stdout]     |
[INFO] [stdout] 461 | impl const BitXor<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:477:12
[INFO] [stdout]     |
[INFO] [stdout] 477 | impl const BitXor<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXor` which is not `const`
[INFO] [stdout]   --> src/hash.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl const BitXor for Key {
[INFO] [stdout]    |            ^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXorAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:438:12
[INFO] [stdout]     |
[INFO] [stdout] 438 | impl const BitXorAssign<Self> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXorAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:454:12
[INFO] [stdout]     |
[INFO] [stdout] 454 | impl const BitXorAssign<Square> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXorAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:470:12
[INFO] [stdout]     |
[INFO] [stdout] 470 | impl const BitXorAssign<File> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXorAssign` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:486:12
[INFO] [stdout]     |
[INFO] [stdout] 486 | impl const BitXorAssign<Rank> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `BitXorAssign` which is not `const`
[INFO] [stdout]   --> src/hash.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl const BitXorAssign for Key {
[INFO] [stdout]    |            ^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:493:12
[INFO] [stdout]     |
[INFO] [stdout] 493 | impl const Not for Bitboard {
[INFO] [stdout]     |            ^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not `const`
[INFO] [stdout]   --> src/core/color.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl const Not for Color {
[INFO] [stdout]    |            ^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not `const`
[INFO] [stdout]   --> src/core/file.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 89 | impl const Not for File {
[INFO] [stdout]    |            ^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not `const`
[INFO] [stdout]   --> src/core/rank.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl const Not for Rank {
[INFO] [stdout]    |            ^^^ this trait is not `const`
[INFO] [stdout]    |
[INFO] [stdout]    = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]    = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Not` which is not `const`
[INFO] [stdout]    --> src/core/square.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 | impl const Not for Square {
[INFO] [stdout]     |            ^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Shl` which is not `const`
[INFO] [stdout]    --> src/bitboard.rs:502:12
[INFO] [stdout]     |
[INFO] [stdout] 502 | impl const Shl<u8> for Bitboard {
[INFO] [stdout]     |            ^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_side::CastlingSide` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `castling_side::CastlingSide`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `color::Color` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `file::File` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `MoveType` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `MoveType`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `MovePromotion` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `MovePromotion`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `piece::Piece` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |            impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                   ^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | /  enumeration! {
[INFO] [stdout]   5 | |      /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |      /// token.
[INFO] [stdout]   7 | |      ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `rank::Rank` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `rank::Rank`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |            impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                   ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | /  enumeration! {
[INFO] [stdout]   6 | |      /// A square on a chess board.
[INFO] [stdout]   7 | |      pub Square, [
[INFO] [stdout]   8 | |          A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 109 |           impl<T> const ::core::ops::Index<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                  ^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_side::CastlingSide` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `castling_side::CastlingSide`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `color::Color` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `file::File` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `MoveType` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `MoveType`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `MovePromotion` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `MovePromotion`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `piece::Piece` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |            impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                ^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | /  enumeration! {
[INFO] [stdout]   5 | |      /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |      /// token.
[INFO] [stdout]   7 | |      ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `rank::Rank` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `rank::Rank`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |            impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                                ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | /  enumeration! {
[INFO] [stdout]   6 | |      /// A square on a chess board.
[INFO] [stdout]   7 | |      pub Square, [
[INFO] [stdout]   8 | |          A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core.rs:117:61
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 117 |           impl<T> ::core::ops::IndexMut<$name> for [T; $name::COUNT] {
[INFO] [stdout]     |                                                               ^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: const `impl` for trait `Neg` which is not `const`
[INFO] [stdout]    --> src/core/direction.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 152 | impl const std::ops::Neg for Direction {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ this trait is not `const`
[INFO] [stdout]     |
[INFO] [stdout]     = note: marking a trait with `const` ensures all default method bodies are `const`
[INFO] [stdout]     = note: adding a non-const method body in the future would be a breaking change
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |       psq:        [[Key; Square::COUNT]; Piece::COUNT],
[INFO] [stdout]    |                                  ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:18:47
[INFO] [stdout]    |
[INFO] [stdout] 18 |       psq:        [[Key; Square::COUNT]; Piece::COUNT],
[INFO] [stdout]    |                                                 ^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:19:29
[INFO] [stdout]    |
[INFO] [stdout] 19 |       en_passant: [Key; File::COUNT],
[INFO] [stdout]    |                               ^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 |       const COLORS: [Color; Self::COUNT] = [
[INFO] [stdout]    |                                   ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:18:45
[INFO] [stdout]    |
[INFO] [stdout] 18 |       const KING_DESTINATIONS: [Square; Self::COUNT] = [
[INFO] [stdout]    |                                               ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:23:45
[INFO] [stdout]    |
[INFO] [stdout] 23 |       const ROOK_DESTINATIONS: [Square; Self::COUNT] = [
[INFO] [stdout]    |                                               ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_side::CastlingSide` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 |       const KINDS: [[Self; CastlingSide::COUNT]; Color::COUNT] = [
[INFO] [stdout]    |                                          ^^^^^ variant or associated item not found in `castling_side::CastlingSide`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:28:55
[INFO] [stdout]    |
[INFO] [stdout] 28 |       const KINDS: [[Self; CastlingSide::COUNT]; Color::COUNT] = [
[INFO] [stdout]    |                                                         ^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 |       const SIDES: [CastlingSide; Self::COUNT] = [
[INFO] [stdout]    |                                         ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]   --> src/core/castling/castling_variety.rs:38:42
[INFO] [stdout]    |
[INFO] [stdout] 38 |       const RIGHTS: [CastlingRights; Self::COUNT] = [
[INFO] [stdout]    |                                            ^^^^^ variant or associated item not found in `castling_variety::CastlingVariety`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/color.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 |       const RANKS: [Rank; Self::COUNT] = [ Rank::_1, Rank::_8 ];
[INFO] [stdout]    |                                 ^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:22:29
[INFO] [stdout]    |
[INFO] [stdout] 22 |       const FEN: [char; Self::COUNT] = [
[INFO] [stdout]    |                               ^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `token::Token` in the current scope
[INFO] [stdout]   --> src/core/token.rs:13:51
[INFO] [stdout]    |
[INFO] [stdout] 13 |       pub const STEPS: [&'static [Direction]; Self::COUNT] = [
[INFO] [stdout]    |                                                     ^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `iter` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/board.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 |           Square::iter().filter_map(|s| self[s].map(|t| (s, t)))
[INFO] [stdout]    |                   ^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `iter` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/accelerate/computed.rs:92:26
[INFO] [stdout]    |
[INFO] [stdout] 92 |         if let Some(s) = square + steps[i] {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^ expected `Square`, found `Option<Square>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `square::Square`
[INFO] [stdout]               found enum `Option<square::Square>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/accelerate/computed.rs:92:16
[INFO] [stdout]    |
[INFO] [stdout] 92 |         if let Some(s) = square + steps[i] {
[INFO] [stdout]    |                ^^^^^^^   ----------------- this expression has type `square::Square`
[INFO] [stdout]    |                |
[INFO] [stdout]    |                expected `Square`, found `Option<_>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `square::Square`
[INFO] [stdout]               found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/accelerate/computed.rs:125:23
[INFO] [stdout]     |
[INFO] [stdout] 125 |             s = match s + dir {
[INFO] [stdout]     |                       ^^^^^^^ expected `Square`, found `Option<Square>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `square::Square`
[INFO] [stdout]                found enum `Option<square::Square>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/accelerate/computed.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 125 |             s = match s + dir {
[INFO] [stdout]     |                       ------- this expression has type `square::Square`
[INFO] [stdout] 126 |                 Some(v) => v,
[INFO] [stdout]     |                 ^^^^^^^ expected `Square`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `square::Square`
[INFO] [stdout]                found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/accelerate/computed.rs:127:17
[INFO] [stdout]     |
[INFO] [stdout] 125 |             s = match s + dir {
[INFO] [stdout]     |                       ------- this expression has type `square::Square`
[INFO] [stdout] 126 |                 Some(v) => v,
[INFO] [stdout] 127 |                 None    => break,
[INFO] [stdout]     |                 ^^^^ expected `Square`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `square::Square`
[INFO] [stdout]                found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `iter` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/bitboard/magic.rs:41:28
[INFO] [stdout]    |
[INFO] [stdout] 41 |           let size = Square::iter().fold(0, |offset, square| {
[INFO] [stdout]    |                              ^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `iter` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `VARIANTS` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/bitboard.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |           Square::VARIANTS.get(self.0.trailing_zeros() as usize).copied()
[INFO] [stdout]     |                   ^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `VARIANTS` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/bitboard.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |           Self(1 << s.as_u8())
[INFO] [stdout]     |                       ^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/board.rs:15:49
[INFO] [stdout]    |
[INFO] [stdout] 15 |       pub const EMPTY: Self = Self([None; Square::COUNT]);
[INFO] [stdout]    |                                                   ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/board.rs:56:26
[INFO] [stdout]    |
[INFO] [stdout] 56 |           self.index(index.as_usize())
[INFO] [stdout]    |                            ^^^^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_usize` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/board.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |           self.index_mut(index.as_usize())
[INFO] [stdout]    |                                ^^^^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_usize` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `iter` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/board.rs:72:27
[INFO] [stdout]    |
[INFO] [stdout] 72 |           for rank in Rank::iter().rev() {
[INFO] [stdout]    |                             ^^^^ variant or associated item not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `iter` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `rank::Rank`, consider using `rank::Rank::from_fen` which returns `Option<rank::Rank>`
[INFO] [stdout]   --> src/core/rank.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `iter` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/board.rs:75:31
[INFO] [stdout]    |
[INFO] [stdout] 75 |               for file in File::iter() {
[INFO] [stdout]    |                                 ^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `iter` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `file::File`, consider using `file::File::from_fen` which returns `Option<file::File>`
[INFO] [stdout]   --> src/core/file.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `castling_side::CastlingSide` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `castling_side::CastlingSide`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `castling_side::CastlingSide` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `castling_side::CastlingSide`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]   5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]   6 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `castling_variety::CastlingVariety`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `castling_variety::CastlingVariety` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `castling_variety::CastlingVariety`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]   5 | |     /// and the side to which castling will occur.
[INFO] [stdout]   6 | |     pub CastlingVariety, [
[INFO] [stdout] ...   |
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `color::Color` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `color::Color`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `color::Color` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `color::Color`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/color.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]   7 | |     pub Color, [ White, Black ]
[INFO] [stdout]   8 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/color.rs:46:19
[INFO] [stdout]    |
[INFO] [stdout] 46 |               Self::from_u8(self.as_u8() ^ 1).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 46 -             Self::from_u8(self.as_u8() ^ 1).unwrap(),
[INFO] [stdout] 46 +             Self::from(self.as_u8() ^ 1).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/color.rs:46:32
[INFO] [stdout]    |
[INFO] [stdout] 46 |               Self::from_u8(self.as_u8() ^ 1).unwrap(),
[INFO] [stdout]    |                                  ^^^^^ method not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/color.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 |               Self::from_u8_unchecked(self.as_u8() ^ 1),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/color.rs:47:42
[INFO] [stdout]    |
[INFO] [stdout] 47 |               Self::from_u8_unchecked(self.as_u8() ^ 1),
[INFO] [stdout]    |                                            ^^^^^ method not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/direction.rs:139:27
[INFO] [stdout]     |
[INFO] [stdout] 139 |           let from   = self.as_u8();
[INFO] [stdout]     |                             ^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/direction.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |           let square = Self::from_u8(to)?;
[INFO] [stdout]     |                              ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 142 -         let square = Self::from_u8(to)?;
[INFO] [stdout] 142 +         let square = Self::from(to)?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `file::File` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `file::File`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `file::File` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `file::File`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/file.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]   8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout]  10 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/file.rs:19:34
[INFO] [stdout]    |
[INFO] [stdout] 19 |               b'A'..=b'H' => Self::from_u8(byte - b'A'),
[INFO] [stdout]    |                                    ^^^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `file::File`, consider using `file::File::from_fen` which returns `Option<file::File>`
[INFO] [stdout]   --> src/core/file.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 19 -             b'A'..=b'H' => Self::from_u8(byte - b'A'),
[INFO] [stdout] 19 +             b'A'..=b'H' => Self::from(byte - b'A'),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/file.rs:20:34
[INFO] [stdout]    |
[INFO] [stdout] 20 |               b'a'..=b'h' => Self::from_u8(byte - b'a'),
[INFO] [stdout]    |                                    ^^^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `file::File`, consider using `file::File::from_fen` which returns `Option<file::File>`
[INFO] [stdout]   --> src/core/file.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 20 -             b'a'..=b'h' => Self::from_u8(byte - b'a'),
[INFO] [stdout] 20 +             b'a'..=b'h' => Self::from(byte - b'a'),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/file.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 |           self.as_u8().abs_diff(other.into())
[INFO] [stdout]    |                ^^^^^ method not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/file.rs:59:16
[INFO] [stdout]    |
[INFO] [stdout] 59 |           (value.as_u8() + b'A') as _
[INFO] [stdout]    |                  ^^^^^ method not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/file.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |               Self::from_u8(s.file_index()).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `file::File`, consider using `file::File::from_fen` which returns `Option<file::File>`
[INFO] [stdout]   --> src/core/file.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 67 -             Self::from_u8(s.file_index()).unwrap(),
[INFO] [stdout] 67 +             Self::from(s.file_index()).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/core/file.rs:68:19
[INFO] [stdout]    |
[INFO] [stdout] 68 |               Self::from_u8_unchecked(s.file_index()),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `file::File`, consider using `file::File::from_fen` which returns `Option<file::File>`
[INFO] [stdout]   --> src/core/file.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `MoveType` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `MoveType`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `MoveType` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `MoveType`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:18:1
[INFO] [stdout]     |
[INFO] [stdout]  18 | / enumeration! {
[INFO] [stdout]  19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout]  20 | |     ///
[INFO] [stdout]  21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout]  22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout]  23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout]  24 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `MovePromotion` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `MovePromotion`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `MovePromotion` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `MovePromotion`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/move.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / enumeration! {
[INFO] [stdout]  27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout]  28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout]  29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout]  30 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/move.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 |           debug_assert!(origin     .as_u8() < (1 << Self::ORIGIN_BITS));
[INFO] [stdout]    |                                     ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/move.rs:64:35
[INFO] [stdout]    |
[INFO] [stdout] 64 |           debug_assert!(destination.as_u8() < (1 << Self::DESTINATION_BITS));
[INFO] [stdout]    |                                     ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/move.rs:66:49
[INFO] [stdout]    |
[INFO] [stdout] 66 |           let bits_destination: u16 = destination.as_u8().into();
[INFO] [stdout]    |                                                   ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/move.rs:67:49
[INFO] [stdout]    |
[INFO] [stdout] 67 |           let bits_origin:      u16 = origin     .as_u8().into();
[INFO] [stdout]    |                                                   ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/move.rs:140:21
[INFO] [stdout]     |
[INFO] [stdout] 140 |               Square::from_u8(bits).unwrap(),
[INFO] [stdout]     |                       ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 140 -             Square::from_u8(bits).unwrap(),
[INFO] [stdout] 140 +             Square::from(bits).unwrap(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/move.rs:141:21
[INFO] [stdout]     |
[INFO] [stdout] 141 |               Square::from_u8_unchecked(bits),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/move.rs:155:21
[INFO] [stdout]     |
[INFO] [stdout] 155 |               Square::from_u8(bits).unwrap(),
[INFO] [stdout]     |                       ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 155 -             Square::from_u8(bits).unwrap(),
[INFO] [stdout] 155 +             Square::from(bits).unwrap(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/move.rs:156:21
[INFO] [stdout]     |
[INFO] [stdout] 156 |               Square::from_u8_unchecked(bits),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `MoveType` in the current scope
[INFO] [stdout]    --> src/core/move.rs:165:23
[INFO] [stdout]     |
[INFO] [stdout] 165 |               MoveType::from_u8(bits).unwrap(),
[INFO] [stdout]     |                         ^^^^^^^ variant or associated item not found in `MoveType`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 165 -             MoveType::from_u8(bits).unwrap(),
[INFO] [stdout] 165 +             MoveType::from(bits).unwrap(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `MoveType` in the current scope
[INFO] [stdout]    --> src/core/move.rs:166:23
[INFO] [stdout]     |
[INFO] [stdout] 166 |               MoveType::from_u8_unchecked(bits),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^ variant or associated item not found in `MoveType`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core/move.rs:187:29
[INFO] [stdout]     |
[INFO] [stdout] 187 |               + Token::Knight.as_u8();
[INFO] [stdout]     |                               ^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core/move.rs:190:20
[INFO] [stdout]     |
[INFO] [stdout] 190 |               Token::from_u8(bits).unwrap(),
[INFO] [stdout]     |                      ^^^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 190 -             Token::from_u8(bits).unwrap(),
[INFO] [stdout] 190 +             Token::from(bits).unwrap(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core/move.rs:191:20
[INFO] [stdout]     |
[INFO] [stdout] 191 |               Token::from_u8_unchecked(bits),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `piece::Piece` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                    self.index(val.as_usize())
[INFO] [stdout]     |                                   ^^^^^^^^ method not found in `piece::Piece`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | /  enumeration! {
[INFO] [stdout]   5 | |      /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |      /// token.
[INFO] [stdout]   7 | |      ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `piece::Piece` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                    self.index_mut(val.as_usize())
[INFO] [stdout]     |                                       ^^^^^^^^ method not found in `piece::Piece`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/piece.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | /  enumeration! {
[INFO] [stdout]   5 | |      /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]   6 | |      /// token.
[INFO] [stdout]   7 | |      ///
[INFO] [stdout] ...   |
[INFO] [stdout]  19 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `token::Token` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |           let repr = token.as_u8() << 1 | color.as_u8();
[INFO] [stdout]    |                            ^^^^^ method not found in `token::Token`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:51:47
[INFO] [stdout]    |
[INFO] [stdout] 51 |           let repr = token.as_u8() << 1 | color.as_u8();
[INFO] [stdout]    |                                                 ^^^^^ method not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:54:19
[INFO] [stdout]    |
[INFO] [stdout] 54 |               Self::from_u8(repr).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `piece::Piece` consider using one of the following associated functions:
[INFO] [stdout]       piece::Piece::from_fen
[INFO] [stdout]       piece::Piece::new
[INFO] [stdout]   --> src/core/piece.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub const fn new(color: Color, token: Token) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 54 -             Self::from_u8(repr).unwrap(),
[INFO] [stdout] 54 +             Self::from(repr).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:55:19
[INFO] [stdout]    |
[INFO] [stdout] 55 |               Self::from_u8_unchecked(repr),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `piece::Piece` consider using one of the following associated functions:
[INFO] [stdout]       piece::Piece::from_fen
[INFO] [stdout]       piece::Piece::new
[INFO] [stdout]   --> src/core/piece.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub const fn new(color: Color, token: Token) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 62 |           let color = self.as_u8() & 0b1;
[INFO] [stdout]    |                            ^^^^^ method not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:65:20
[INFO] [stdout]    |
[INFO] [stdout] 65 |               Color::from_u8(color).unwrap(),
[INFO] [stdout]    |                      ^^^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 65 -             Color::from_u8(color).unwrap(),
[INFO] [stdout] 65 +             Color::from(color).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `color::Color` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 |               Color::from_u8_unchecked(color),
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^ variant or associated item not found in `color::Color`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:73:26
[INFO] [stdout]    |
[INFO] [stdout] 73 |           let token = self.as_u8() >> 1;
[INFO] [stdout]    |                            ^^^^^ method not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `token::Token` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:76:20
[INFO] [stdout]    |
[INFO] [stdout] 76 |               Token::from_u8(token).unwrap(),
[INFO] [stdout]    |                      ^^^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 76 -             Token::from_u8(token).unwrap(),
[INFO] [stdout] 76 +             Token::from(token).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `token::Token` in the current scope
[INFO] [stdout]   --> src/core/piece.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |               Token::from_u8_unchecked(token),
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^ variant or associated item not found in `token::Token`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `rank::Rank` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `rank::Rank`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `rank::Rank` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `rank::Rank`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/rank.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | / enumeration! {
[INFO] [stdout]   6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]   7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]   8 | |     /// number.
[INFO] [stdout] ...   |
[INFO] [stdout]  13 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/rank.rs:22:34
[INFO] [stdout]    |
[INFO] [stdout] 22 |               b'1'..=b'8' => Self::from_u8(byte - b'1'),
[INFO] [stdout]    |                                    ^^^^^^^ variant or associated item not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `rank::Rank`, consider using `rank::Rank::from_fen` which returns `Option<rank::Rank>`
[INFO] [stdout]   --> src/core/rank.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 22 -             b'1'..=b'8' => Self::from_u8(byte - b'1'),
[INFO] [stdout] 22 +             b'1'..=b'8' => Self::from(byte - b'1'),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/rank.rs:32:14
[INFO] [stdout]    |
[INFO] [stdout] 32 |           self.as_u8().abs_diff(other.as_u8())
[INFO] [stdout]    |                ^^^^^ method not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/rank.rs:32:37
[INFO] [stdout]    |
[INFO] [stdout] 32 |           self.as_u8().abs_diff(other.as_u8())
[INFO] [stdout]    |                                       ^^^^^ method not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/rank.rs:61:16
[INFO] [stdout]    |
[INFO] [stdout] 61 |           (value.as_u8() + b'1') as _
[INFO] [stdout]    |                  ^^^^^ method not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/rank.rs:69:19
[INFO] [stdout]    |
[INFO] [stdout] 69 |               Self::from_u8(s.rank_index()).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `rank::Rank`, consider using `rank::Rank::from_fen` which returns `Option<rank::Rank>`
[INFO] [stdout]   --> src/core/rank.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 69 -             Self::from_u8(s.rank_index()).unwrap(),
[INFO] [stdout] 69 +             Self::from(s.rank_index()).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `rank::Rank` in the current scope
[INFO] [stdout]   --> src/core/rank.rs:70:19
[INFO] [stdout]    |
[INFO] [stdout] 70 |               Self::from_u8_unchecked(s.rank_index()),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `rank::Rank`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `rank::Rank`, consider using `rank::Rank::from_fen` which returns `Option<rank::Rank>`
[INFO] [stdout]   --> src/core/rank.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub const fn from_fen(byte: u8) -> Option<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                    self.index(val.as_usize())
[INFO] [stdout]     |                                   ^^^^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | /  enumeration! {
[INFO] [stdout]   6 | |      /// A square on a chess board.
[INFO] [stdout]   7 | |      pub Square, [
[INFO] [stdout]   8 | |          A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 |  /         $vis enum $name {
[INFO] [stdout]  16 |  |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 |  |         }
[INFO] [stdout]     |  |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                    self.index_mut(val.as_usize())
[INFO] [stdout]     |                                       ^^^^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/square.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | /  enumeration! {
[INFO] [stdout]   6 | |      /// A square on a chess board.
[INFO] [stdout]   7 | |      pub Square, [
[INFO] [stdout]   8 | |          A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...   |
[INFO] [stdout]  17 | |  }
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 28 |               Self::from_u8(s).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 28 -             Self::from_u8(s).unwrap(),
[INFO] [stdout] 28 +             Self::from(s).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 |               Self::from_u8_unchecked(s),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |           self.as_u8() & 0b0111
[INFO] [stdout]    |                ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:48:14
[INFO] [stdout]    |
[INFO] [stdout] 48 |           self.as_u8() >> 3
[INFO] [stdout]    |                ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |           let s = self.as_u8() ^ Self::H1.as_u8();
[INFO] [stdout]    |                        ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:75:41
[INFO] [stdout]    |
[INFO] [stdout] 75 |           let s = self.as_u8() ^ Self::H1.as_u8();
[INFO] [stdout]    |                                           ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:78:19
[INFO] [stdout]    |
[INFO] [stdout] 78 |               Self::from_u8(s).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 78 -             Self::from_u8(s).unwrap(),
[INFO] [stdout] 78 +             Self::from(s).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |               Self::from_u8_unchecked(s),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:87:22
[INFO] [stdout]    |
[INFO] [stdout] 87 |           let s = self.as_u8() ^ Self::A8.as_u8();
[INFO] [stdout]    |                        ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:87:41
[INFO] [stdout]    |
[INFO] [stdout] 87 |           let s = self.as_u8() ^ Self::A8.as_u8();
[INFO] [stdout]    |                                           ^^^^^ method not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 90 |               Self::from_u8(s).unwrap(),
[INFO] [stdout]    |                     ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 90 -             Self::from_u8(s).unwrap(),
[INFO] [stdout] 90 +             Self::from(s).unwrap(),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/core/square.rs:91:19
[INFO] [stdout]    |
[INFO] [stdout] 91 |               Self::from_u8_unchecked(s),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]   --> src/core/square.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:112:22
[INFO] [stdout]     |
[INFO] [stdout] 112 |           let s = self.as_u8() ^ (color.as_u8() * 0b0011_1000);
[INFO] [stdout]     |                        ^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `color::Color` in the current scope
[INFO] [stdout]    --> src/core/square.rs:112:39
[INFO] [stdout]     |
[INFO] [stdout] 112 |           let s = self.as_u8() ^ (color.as_u8() * 0b0011_1000);
[INFO] [stdout]     |                                         ^^^^^ method not found in `color::Color`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:115:19
[INFO] [stdout]     |
[INFO] [stdout] 115 |               Self::from_u8(s).unwrap(),
[INFO] [stdout]     |                     ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 115 -             Self::from_u8(s).unwrap(),
[INFO] [stdout] 115 +             Self::from(s).unwrap(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:116:19
[INFO] [stdout]     |
[INFO] [stdout] 116 |               Self::from_u8_unchecked(s),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:160:29
[INFO] [stdout]     |
[INFO] [stdout] 160 |           let lateral  = self.as_u8().wrapping_add_signed(dir.lateral_part() .as_i8());
[INFO] [stdout]     |                               ^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:161:29
[INFO] [stdout]     |
[INFO] [stdout] 161 |           let vertical = self.as_u8().wrapping_add_signed(dir.vertical_part().as_i8());
[INFO] [stdout]     |                               ^^^^^ method not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_u8` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:166:19
[INFO] [stdout]     |
[INFO] [stdout] 166 |               Self::from_u8(sum).unwrap(),
[INFO] [stdout]     |                     ^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 166 -             Self::from_u8(sum).unwrap(),
[INFO] [stdout] 166 +             Self::from(sum).unwrap(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `from_u8_unchecked` found for enum `square::Square` in the current scope
[INFO] [stdout]    --> src/core/square.rs:167:19
[INFO] [stdout]     |
[INFO] [stdout] 167 |               Self::from_u8_unchecked(sum),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- variant or associated item `from_u8_unchecked` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `square::Square`, consider using `square::Square::new` which returns `square::Square`
[INFO] [stdout]    --> src/core/square.rs:22:5
[INFO] [stdout]     |
[INFO] [stdout]  22 |     pub const fn new(file: File, rank: Rank) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |                   self.index(val.as_usize())
[INFO] [stdout]     |                                  ^^^^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_usize` found for enum `token::Token` in the current scope
[INFO] [stdout]    --> src/core.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout]  15 | /         $vis enum $name {
[INFO] [stdout]  16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout]  17 | |         }
[INFO] [stdout]     | |_________- method `as_usize` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 119 |                   self.index_mut(val.as_usize())
[INFO] [stdout]     |                                      ^^^^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/token.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout]   3 | / enumeration! {
[INFO] [stdout]   4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]   5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]   6 | |     pub Token, [
[INFO] [stdout] ...   |
[INFO] [stdout]   9 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:34:71
[INFO] [stdout]    |
[INFO] [stdout] 34 |           let mut psq        = [[Key::default(); Square::COUNT]; Piece::COUNT];
[INFO] [stdout]    |                                                                         ^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:34:56
[INFO] [stdout]    |
[INFO] [stdout] 34 |           let mut psq        = [[Key::default(); Square::COUNT]; Piece::COUNT];
[INFO] [stdout]    |                                                          ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:35:53
[INFO] [stdout]    |
[INFO] [stdout] 35 |           let mut en_passant = [Key::default(); File::COUNT];
[INFO] [stdout]    |                                                       ^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `piece::Piece` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:43:26
[INFO] [stdout]    |
[INFO] [stdout] 43 |           while i < Piece::COUNT {
[INFO] [stdout]    |                            ^^^^^ variant or associated item not found in `piece::Piece`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `square::Square` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:46:31
[INFO] [stdout]    |
[INFO] [stdout] 46 |               while j < Square::COUNT {
[INFO] [stdout]    |                                 ^^^^^ variant or associated item not found in `square::Square`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `COUNT` found for enum `file::File` in the current scope
[INFO] [stdout]   --> src/hash/zobrist.rs:57:25
[INFO] [stdout]    |
[INFO] [stdout] 57 |           while i < File::COUNT {
[INFO] [stdout]    |                           ^^^^^ variant or associated item not found in `file::File`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | /         $vis enum $name {
[INFO] [stdout] 16 | |             $(#[allow(missing_docs)] $var = ${index()}),+
[INFO] [stdout] 17 | |         }
[INFO] [stdout]    | |_________- variant or associated item `COUNT` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]  --> src/accelerate/computed.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let s1_file: u8 = s1.file().into();
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]  --> src/accelerate/computed.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let s1_rank: u8 = s1.rank().into();
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]  --> src/accelerate/computed.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let s2_file: u8 = s2.file().into();
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/accelerate/computed.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let s2_rank: u8 = s2.rank().into();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const function `std::cmp::max::<u8>` in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     std::cmp::max(file_diff, rank_diff)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |         return (s1 | s2) | (
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |           return (s1 | s2) | (
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 23 | |             pseudo_attacks(Token::Bishop, s1) &
[INFO] [stdout] 24 | |             pseudo_attacks(Token::Bishop, s2)
[INFO] [stdout] 25 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |           return (s1 | s2) | (
[INFO] [stdout]    |  ________________^
[INFO] [stdout] 23 | |             pseudo_attacks(Token::Bishop, s1) &
[INFO] [stdout] 24 | |             pseudo_attacks(Token::Bishop, s2)
[INFO] [stdout] 25 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 |         return (s1 | s2) | (
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 |           return (s1 | s2) | (
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 30 | |             pseudo_attacks(Token::Rook, s1) &
[INFO] [stdout] 31 | |             pseudo_attacks(Token::Rook, s2)
[INFO] [stdout] 32 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 |           return (s1 | s2) | (
[INFO] [stdout]    |  ________________^
[INFO] [stdout] 30 | |             pseudo_attacks(Token::Rook, s1) &
[INFO] [stdout] 31 | |             pseudo_attacks(Token::Rook, s2)
[INFO] [stdout] 32 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/accelerate/computed.rs:48:48
[INFO] [stdout]    |
[INFO] [stdout] 48 |             sliding_attacks(Token::Bishop, s1, s2.into()) &
[INFO] [stdout]    |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/accelerate/computed.rs:49:48
[INFO] [stdout]    |
[INFO] [stdout] 49 |             sliding_attacks(Token::Bishop, s2, s1.into()) |
[INFO] [stdout]    |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 | /             sliding_attacks(Token::Bishop, s1, s2.into()) &
[INFO] [stdout] 49 | |             sliding_attacks(Token::Bishop, s2, s1.into()) |
[INFO] [stdout]    | |_________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 | /             sliding_attacks(Token::Bishop, s1, s2.into()) &
[INFO] [stdout] 49 | |             sliding_attacks(Token::Bishop, s2, s1.into()) |
[INFO] [stdout] 50 | |             s2;
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/accelerate/computed.rs:55:46
[INFO] [stdout]    |
[INFO] [stdout] 55 |             sliding_attacks(Token::Rook, s1, s2.into()) &
[INFO] [stdout]    |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/accelerate/computed.rs:56:46
[INFO] [stdout]    |
[INFO] [stdout] 56 |             sliding_attacks(Token::Rook, s2, s1.into()) |
[INFO] [stdout]    |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 | /             sliding_attacks(Token::Rook, s1, s2.into()) &
[INFO] [stdout] 56 | |             sliding_attacks(Token::Rook, s2, s1.into()) |
[INFO] [stdout]    | |_______________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 | /             sliding_attacks(Token::Rook, s1, s2.into()) &
[INFO] [stdout] 56 | |             sliding_attacks(Token::Rook, s2, s1.into()) |
[INFO] [stdout] 57 | |             s2;
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/accelerate/computed.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     s2.into()
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/accelerate/computed.rs:64:19
[INFO] [stdout]    |
[INFO] [stdout] 64 |     debug_assert!((occupied & square).is_empty(),
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/accelerate/computed.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let board: Bitboard = square.into();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/accelerate/computed.rs:106:25
[INFO] [stdout]     |
[INFO] [stdout] 106 |         Color::White => (board + Direction::NW) | (board + Direction::NE),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/accelerate/computed.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |         Color::Black => (board + Direction::SW) | (board + Direction::SE),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:175:14
[INFO] [stdout]     |
[INFO] [stdout] 175 |             ((Bitboard::FILE_A | Bitboard::FILE_H) & !square.file()) |
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:175:54
[INFO] [stdout]     |
[INFO] [stdout] 175 |             ((Bitboard::FILE_A | Bitboard::FILE_H) & !square.file()) |
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 |             ((Bitboard::FILE_A | Bitboard::FILE_H) & !square.file()) |
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:176:14
[INFO] [stdout]     |
[INFO] [stdout] 176 |             ((Bitboard::RANK_1 | Bitboard::RANK_8) & !square.rank());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:176:54
[INFO] [stdout]     |
[INFO] [stdout] 176 |             ((Bitboard::RANK_1 | Bitboard::RANK_8) & !square.rank());
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:176:13
[INFO] [stdout]     |
[INFO] [stdout] 176 |             ((Bitboard::RANK_1 | Bitboard::RANK_8) & !square.rank());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 | /             ((Bitboard::FILE_A | Bitboard::FILE_H) & !square.file()) |
[INFO] [stdout] 176 | |             ((Bitboard::RANK_1 | Bitboard::RANK_8) & !square.rank());
[INFO] [stdout]     | |____________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:183:51
[INFO] [stdout]     |
[INFO] [stdout] 183 |         computed::pseudo_attacks(token, square) & !edges
[INFO] [stdout]     |                                                   ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         computed::pseudo_attacks(token, square) & !edges
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard/magic.rs:223:22
[INFO] [stdout]     |
[INFO] [stdout] 223 |         let masked = (occupied & self.mask).0;
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as PartialOrd>::partial_cmp` in constant functions
[INFO] [stdout]   --> src/bitboard.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, PartialEq, PartialOrd, Ord)]
[INFO] [stdout]    |                                  ---------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 27 | pub struct Bitboard(u64);
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as Ord>::cmp` in constant functions
[INFO] [stdout]   --> src/bitboard.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, PartialEq, PartialOrd, Ord)]
[INFO] [stdout]    |                                              --- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 27 | pub struct Bitboard(u64);
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/bitboard.rs:31:29
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub const EMPTY: Self = 0.into();
[INFO] [stdout]    |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/bitboard.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub const ALL:   Self = u64::MAX.into();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/bitboard.rs:37:37
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub const DARK_SQUARES:  Self = 0xAA_55_AA_55_AA_55_AA_55.into();
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/bitboard.rs:40:37
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub const LIGHT_SQUARES: Self = 0x55_AA_55_AA_55_AA_55_AA.into();
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/bitboard.rs:43:34
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub const FILE_A: Bitboard = 0x01_01_01_01_01_01_01_01.into();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:46:34
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub const FILE_B: Bitboard = Self::FILE_A << 1;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:49:34
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub const FILE_C: Bitboard = Self::FILE_A << 2;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:52:34
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub const FILE_D: Bitboard = Self::FILE_A << 3;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:55:34
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub const FILE_E: Bitboard = Self::FILE_A << 4;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:58:34
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub const FILE_F: Bitboard = Self::FILE_A << 5;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:61:34
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub const FILE_G: Bitboard = Self::FILE_A << 6;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:64:34
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub const FILE_H: Bitboard = Self::FILE_A << 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: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/bitboard.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub const RANK_1: Bitboard = 0xFF.into();
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:70:34
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub const RANK_2: Bitboard = Self::RANK_1 << (8);
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:73:34
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub const RANK_3: Bitboard = Self::RANK_1 << (8 * 2);
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:76:34
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub const RANK_4: Bitboard = Self::RANK_1 << (8 * 3);
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:79:34
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub const RANK_5: Bitboard = Self::RANK_1 << (8 * 4);
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:82:34
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub const RANK_6: Bitboard = Self::RANK_1 << (8 * 5);
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub const RANK_7: Bitboard = Self::RANK_1 << (8 * 6);
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:88:34
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub const RANK_8: Bitboard = Self::RANK_1 << (8 * 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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Self::FILE_A | Self::FILE_B | Self::FILE_C | Self::FILE_D;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Self::FILE_A | Self::FILE_B | Self::FILE_C | Self::FILE_D;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Self::FILE_A | Self::FILE_B | Self::FILE_C | Self::FILE_D;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         Self::FILE_C | Self::FILE_D | Self::FILE_E | Self::FILE_F;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         Self::FILE_C | Self::FILE_D | Self::FILE_E | Self::FILE_F;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/bitboard.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         Self::FILE_C | Self::FILE_D | Self::FILE_E | Self::FILE_F;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Self::FILE_E | Self::FILE_F | Self::FILE_G | Self::FILE_H;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Self::FILE_E | Self::FILE_F | Self::FILE_G | Self::FILE_H;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Self::FILE_E | Self::FILE_F | Self::FILE_G | Self::FILE_H;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         (Self::FILE_D | Self::FILE_E) &
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         (Self::RANK_4 | Self::RANK_5);
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 | /         (Self::FILE_D | Self::FILE_E) &
[INFO] [stdout] 106 | |         (Self::RANK_4 | Self::RANK_5);
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:109:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub const EDGE_FILES: Bitboard = Self::FILE_A | Self::FILE_H;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:112:38
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub const EDGE_RANKS: Bitboard = Self::RANK_1 | Self::RANK_8;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:115:33
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub const EDGES: Bitboard = Self::EDGE_FILES | Self::EDGE_RANKS;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         Square::A1 | Square::A8 |
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 | /         Square::A1 | Square::A8 |
[INFO] [stdout] 120 | |         Square::H1 | Square::H8;
[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 call non-const operator in constants
[INFO] [stdout]    --> src/bitboard.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 | /         Square::A1 | Square::A8 |
[INFO] [stdout] 120 | |         Square::H1 | Square::H8;
[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: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:173:23
[INFO] [stdout]     |
[INFO] [stdout] 173 |         self.overlaps(s.into())
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |         (!self).overlaps(s.into())
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:180:26
[INFO] [stdout]     |
[INFO] [stdout] 180 |         (!self).overlaps(s.into())
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |         (self & rhs).is_any()
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as BitAnd>::bitand` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:306:16
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.0.bitand(rhs.0).into()
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.0.bitand(rhs.0).into()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |         self.bitand(Self::from(rhs))
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitAnd>::bitand` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:322:14
[INFO] [stdout]     |
[INFO] [stdout] 322 |         self.bitand(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:329:28
[INFO] [stdout]     |
[INFO] [stdout] 329 |         self.bitand_assign(Self::from(rhs));
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitAndAssign>::bitand_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:329:14
[INFO] [stdout]     |
[INFO] [stdout] 329 |         self.bitand_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:338:21
[INFO] [stdout]     |
[INFO] [stdout] 338 |         self.bitand(Self::from(rhs))
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitAnd>::bitand` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:338:14
[INFO] [stdout]     |
[INFO] [stdout] 338 |         self.bitand(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:345:28
[INFO] [stdout]     |
[INFO] [stdout] 345 |         self.bitand_assign(Self::from(rhs));
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitAndAssign>::bitand_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:345:14
[INFO] [stdout]     |
[INFO] [stdout] 345 |         self.bitand_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:354:21
[INFO] [stdout]     |
[INFO] [stdout] 354 |         self.bitand(Self::from(rhs))
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitAnd>::bitand` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:354:14
[INFO] [stdout]     |
[INFO] [stdout] 354 |         self.bitand(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:361:28
[INFO] [stdout]     |
[INFO] [stdout] 361 |         self.bitand_assign(Self::from(rhs));
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitAndAssign>::bitand_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:361:14
[INFO] [stdout]     |
[INFO] [stdout] 361 |         self.bitand_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as BitOr>::bitor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:370:16
[INFO] [stdout]     |
[INFO] [stdout] 370 |         self.0.bitor(rhs.0).into()
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:370:9
[INFO] [stdout]     |
[INFO] [stdout] 370 |         self.0.bitor(rhs.0).into()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:386:20
[INFO] [stdout]     |
[INFO] [stdout] 386 |         self.bitor(Self::from(rhs))
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitOr>::bitor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:386:14
[INFO] [stdout]     |
[INFO] [stdout] 386 |         self.bitor(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:393:27
[INFO] [stdout]     |
[INFO] [stdout] 393 |         self.bitor_assign(Self::from(rhs));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitOrAssign>::bitor_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:393:14
[INFO] [stdout]     |
[INFO] [stdout] 393 |         self.bitor_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:402:20
[INFO] [stdout]     |
[INFO] [stdout] 402 |         self.bitor(Self::from(rhs))
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitOr>::bitor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:402:14
[INFO] [stdout]     |
[INFO] [stdout] 402 |         self.bitor(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:409:27
[INFO] [stdout]     |
[INFO] [stdout] 409 |         self.bitor_assign(Self::from(rhs));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitOrAssign>::bitor_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:409:14
[INFO] [stdout]     |
[INFO] [stdout] 409 |         self.bitor_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:418:20
[INFO] [stdout]     |
[INFO] [stdout] 418 |         self.bitor(Self::from(rhs))
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitOr>::bitor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:418:14
[INFO] [stdout]     |
[INFO] [stdout] 418 |         self.bitor(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:425:27
[INFO] [stdout]     |
[INFO] [stdout] 425 |         self.bitor_assign(Self::from(rhs));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitOrAssign>::bitor_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:425:14
[INFO] [stdout]     |
[INFO] [stdout] 425 |         self.bitor_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as BitXor>::bitxor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:434:16
[INFO] [stdout]     |
[INFO] [stdout] 434 |         self.0.bitxor(rhs.0).into()
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:434:9
[INFO] [stdout]     |
[INFO] [stdout] 434 |         self.0.bitxor(rhs.0).into()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:450:21
[INFO] [stdout]     |
[INFO] [stdout] 450 |         self.bitxor(Self::from(rhs))
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitXor>::bitxor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:450:14
[INFO] [stdout]     |
[INFO] [stdout] 450 |         self.bitxor(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:457:28
[INFO] [stdout]     |
[INFO] [stdout] 457 |         self.bitxor_assign(Self::from(rhs));
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitXorAssign>::bitxor_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:457:14
[INFO] [stdout]     |
[INFO] [stdout] 457 |         self.bitxor_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:466:21
[INFO] [stdout]     |
[INFO] [stdout] 466 |         self.bitxor(Self::from(rhs))
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitXor>::bitxor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:466:14
[INFO] [stdout]     |
[INFO] [stdout] 466 |         self.bitxor(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:473:28
[INFO] [stdout]     |
[INFO] [stdout] 473 |         self.bitxor_assign(Self::from(rhs));
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitXorAssign>::bitxor_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:473:14
[INFO] [stdout]     |
[INFO] [stdout] 473 |         self.bitxor_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:482:21
[INFO] [stdout]     |
[INFO] [stdout] 482 |         self.bitxor(Self::from(rhs))
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitXor>::bitxor` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:482:14
[INFO] [stdout]     |
[INFO] [stdout] 482 |         self.bitxor(Self::from(rhs))
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:489:28
[INFO] [stdout]     |
[INFO] [stdout] 489 |         self.bitxor_assign(Self::from(rhs));
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<bitboard::Bitboard as BitXorAssign>::bitxor_assign` in constant functions
[INFO] [stdout]    --> src/bitboard.rs:489:14
[INFO] [stdout]     |
[INFO] [stdout] 489 |         self.bitxor_assign(Self::from(rhs));
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:498:9
[INFO] [stdout]     |
[INFO] [stdout] 498 |         (!self.0).into()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:507:9
[INFO] [stdout]     |
[INFO] [stdout] 507 |         (self.0 << rhs).into()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:516:25
[INFO] [stdout]     |
[INFO] [stdout] 516 |         let shift: i8 = direction.into();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard.rs:517:25
[INFO] [stdout]     |
[INFO] [stdout] 517 |         let mask      = !direction.discarded_files();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard.rs:521:20
[INFO] [stdout]     |
[INFO] [stdout] 521 |             _   => (self & mask).0 >> shift.abs(),
[INFO] [stdout]     |                    ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/bitboard.rs:520:20
[INFO] [stdout]     |
[INFO] [stdout] 520 |             0.. => (self & mask).0 << shift,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]    --> src/bitboard.rs:519:9
[INFO] [stdout]     |
[INFO] [stdout] 519 | /         match shift {
[INFO] [stdout] 520 | |             0.. => (self & mask).0 << shift,
[INFO] [stdout] 521 | |             _   => (self & mask).0 >> shift.abs(),
[INFO] [stdout] 522 | |         }.into()
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/castling/castling_path.rs:35:20
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let king = rank | king;
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/castling/castling_path.rs:36:20
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let rook = rank | rook;
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/castling/castling_path.rs:40:20
[INFO] [stdout]    |
[INFO] [stdout] 40 |           let path = (
[INFO] [stdout]    |  ____________________^
[INFO] [stdout] 41 | |             crate::accelerate::between(king, variety.king_destination()) |
[INFO] [stdout] 42 | |             crate::accelerate::between(rook, variety.rook_destination())
[INFO] [stdout] 43 | |         ) & !(king | rook);
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/castling/castling_path.rs:43:14
[INFO] [stdout]    |
[INFO] [stdout] 43 |         ) & !(king | rook);
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/castling/castling_path.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         ) & !(king | rook);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/castling/castling_path.rs:40:20
[INFO] [stdout]    |
[INFO] [stdout] 40 |           let path = (
[INFO] [stdout]    |  ____________________^
[INFO] [stdout] 41 | |             crate::accelerate::between(king, variety.king_destination()) |
[INFO] [stdout] 42 | |             crate::accelerate::between(rook, variety.rook_destination())
[INFO] [stdout] 43 | |         ) & !(king | rook);
[INFO] [stdout]    | |__________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Default` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/castling/castling_rights.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |     #[derive_const(Default)]
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_side.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a side to which castling may occur, kingside or queenside.
[INFO] [stdout]  5 | |     pub CastlingSide, [ King, Queen ]
[INFO] [stdout]  6 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<file::File as Ord>::cmp` in constant functions
[INFO] [stdout]   --> src/core/castling/castling_side.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 |         match king.cmp(&rook) {
[INFO] [stdout]    |                    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/castling/castling_variety.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// Represents a complete type of castling, including the color to castle
[INFO] [stdout]  5 | |     /// and the side to which castling will occur.
[INFO] [stdout]  6 | |     pub CastlingVariety, [
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/color.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A color of a chess token, white or black.
[INFO] [stdout]  7 | |     pub Color, [ White, Black ]
[INFO] [stdout]  8 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constants
[INFO] [stdout]   --> src/core/direction.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub const S: Self = -Self::N;
[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 call non-const operator in constants
[INFO] [stdout]   --> src/core/direction.rs:19:25
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub const W: Self = -Self::E;
[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 call non-const operator in constant functions
[INFO] [stdout]   --> src/core/direction.rs:88:22
[INFO] [stdout]    |
[INFO] [stdout] 88 |             0b101 => Bitboard::FILE_A | Bitboard::FILE_B | Bitboard::FILE_C,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/direction.rs:87:22
[INFO] [stdout]    |
[INFO] [stdout] 87 |             0b110 => Bitboard::FILE_A | Bitboard::FILE_B,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/direction.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |             0b011 => Bitboard::FILE_H | Bitboard::FILE_G | Bitboard::FILE_F,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/direction.rs:82:22
[INFO] [stdout]    |
[INFO] [stdout] 82 |             0b010 => Bitboard::FILE_H | Bitboard::FILE_G,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/direction.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |             0b011 => Bitboard::FILE_H | Bitboard::FILE_G | Bitboard::FILE_F,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/direction.rs:88:22
[INFO] [stdout]    |
[INFO] [stdout] 88 |             0b101 => Bitboard::FILE_A | Bitboard::FILE_B | Bitboard::FILE_C,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/file.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore to mimic those of [`Rank`].
[INFO] [stdout]  8 | |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]  9 | |     pub File, [ _A, _B, _C, _D, _E, _F, _G, _H ]
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]  --> src/core/file.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                    ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:90:1
[INFO] [stdout]   |
[INFO] [stdout] 90+ #![feature(core_intrinsics)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u8 as Ord>::cmp` in constant functions
[INFO] [stdout]  --> src/core/file.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                    ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]  --> src/core/file.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:90:1
[INFO] [stdout]   |
[INFO] [stdout] 90+ #![feature(core_intrinsics)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u8 as PartialOrd>::partial_cmp` in constant functions
[INFO] [stdout]  --> src/core/file.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/file.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         Bitboard::from(self) | rhs
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/file.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         Bitboard::from(self) | rhs
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/file.rs:93:11
[INFO] [stdout]    |
[INFO] [stdout] 93 |         ! Bitboard::from(self)
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/file.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         ! Bitboard::from(self)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enumeration! {
[INFO] [stdout] 19 | |     /// Encodes the type of [`Move`] being made.
[INFO] [stdout] 20 | |     ///
[INFO] [stdout] 21 | |     /// Note that a [`MoveType::EnPassant`] represents the *capture* of a pawn
[INFO] [stdout] 22 | |     /// en passant, not a two square pawn movement.
[INFO] [stdout] 23 | |     pub MoveType, [ Normal, Promotion, EnPassant, Castling ]
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/move.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / enumeration! {
[INFO] [stdout] 27 | |     /// Promotions can only result in four of the possible types of token, so we
[INFO] [stdout] 28 | |     /// create an enum of them specifically for the sake of bit-packing.
[INFO] [stdout] 29 | |     MovePromotion, [ Knight, Bishop, Rook, Queen ]
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/piece.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / enumeration! {
[INFO] [stdout]  5 | |     /// A piece to be placed on a chess board. Combines a color with a type of
[INFO] [stdout]  6 | |     /// token.
[INFO] [stdout]  7 | |     ///
[INFO] [stdout] ...  |
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/rank.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A rank, 1 through 8, on a chess board. The variants for this enum are
[INFO] [stdout]  7 | |     /// prefixed with an underscore since identifiers may not begin with a
[INFO] [stdout]  8 | |     /// number.
[INFO] [stdout] ...  |
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]  --> src/core/rank.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                    ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:90:1
[INFO] [stdout]   |
[INFO] [stdout] 90+ #![feature(core_intrinsics)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u8 as Ord>::cmp` in constant functions
[INFO] [stdout]  --> src/core/rank.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                    ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]  --> src/core/rank.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:90:1
[INFO] [stdout]   |
[INFO] [stdout] 90+ #![feature(core_intrinsics)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u8 as PartialOrd>::partial_cmp` in constant functions
[INFO] [stdout]  --> src/core/rank.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[derive_const(Ord, PartialOrd)]
[INFO] [stdout]   |                         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/rank.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         Bitboard::from(self) | rhs
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/rank.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         Bitboard::from(self) | rhs
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/rank.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 |         ! Bitboard::from(self)
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/rank.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         ! Bitboard::from(self)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]  --> src/core/ruleset.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive_const(Clone, PartialEq)]
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]  --> src/lib.rs:90:1
[INFO] [stdout]   |
[INFO] [stdout] 90+ #![feature(core_intrinsics)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/square.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / enumeration! {
[INFO] [stdout]  6 | |     /// A square on a chess board.
[INFO] [stdout]  7 | |     pub Square, [
[INFO] [stdout]  8 | |         A1, B1, C1, D1, E1, F1, G1, H1,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/square.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |         self.into()
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Into` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/square.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         self.into()
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]   --> src/core/square.rs:61:10
[INFO] [stdout]    |
[INFO] [stdout] 61 |         (Bitboard::from(self) & Bitboard::DARK_SQUARES).is_any()
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]   --> src/core/square.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         (Bitboard::from(self) & Bitboard::DARK_SQUARES).is_any()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/core/square.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Bitboard::from(self) & rhs
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/core/square.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Bitboard::from(self) & rhs
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/core/square.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         Bitboard::from(self) | rhs
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/core/square.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         Bitboard::from(self) | rhs
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `From` is not yet stable as a const trait
[INFO] [stdout]    --> src/core/square.rs:200:11
[INFO] [stdout]     |
[INFO] [stdout] 200 |         ! Bitboard::from(self)
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions
[INFO] [stdout]    --> src/core/square.rs:200:9
[INFO] [stdout]     |
[INFO] [stdout] 200 |         ! Bitboard::from(self)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `discriminant_value` is not yet stable as a const intrinsic
[INFO] [stdout]   --> src/core.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |           #[derive_const(::core::cmp::PartialEq)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/core/token.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / enumeration! {
[INFO] [stdout]  4 | |     /// A file, A through H, on a chess board. The variants for this enum are
[INFO] [stdout]  5 | |     /// prefixed an underscore to mimic those of [`Rank`].
[INFO] [stdout]  6 | |     pub Token, [
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the derive macro `::core::cmp::PartialEq` which comes from the expansion of the macro `enumeration` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add `#![feature(core_intrinsics)]` to the crate attributes to enable
[INFO] [stdout]   --> src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 + #![feature(core_intrinsics)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `Default` is not yet stable as a const trait
[INFO] [stdout]   --> src/hash.rs:26:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive_const(Clone, Default, PartialEq)]
[INFO] [stdout]    |                       ------- in this derive macro expansion
[INFO] [stdout] 25 | #[must_use]
[INFO] [stdout] 26 | pub struct Key(u64);
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as BitXor>::bitxor` in constant functions
[INFO] [stdout]   --> src/hash.rs:38:21
[INFO] [stdout]    |
[INFO] [stdout] 38 |         Self(self.0.bitxor(rhs.0))
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const method `<u64 as BitXorAssign>::bitxor_assign` in constant functions
[INFO] [stdout]   --> src/hash.rs:44:16
[INFO] [stdout]    |
[INFO] [stdout] 44 |         self.0.bitxor_assign(rhs.0);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0015, E0308, E0554, E0557, E0599, E0635, E0658.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0015`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stockfish-core` (lib) due to 474 previous errors; 43 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "0e2a7cd78aeacf5471c759b34afc345be102ee35dc93d7018ead95aeda248420", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e2a7cd78aeacf5471c759b34afc345be102ee35dc93d7018ead95aeda248420", kill_on_drop: false }`
[INFO] [stdout] 0e2a7cd78aeacf5471c759b34afc345be102ee35dc93d7018ead95aeda248420
