cargo rustc --manifest-path ./engine/Cargo.toml --bin tcheran --release   -- -C target-cpu=native --emit link=Tcheran-42874906
   Compiling find-msvc-tools v0.1.9
   Compiling shlex v2.0.1
   Compiling cc v1.2.65
   Compiling engine v13.0.0-dev (/private/var/folders/vj/wh6vw3vd3t509h3hnsgg6_lc0000gn/T/tmplurc1ket/Tcheran/Tcheran-tmp/engine)
warning: engine@13.0.0-dev: Fetched network: multilayer.nnue
warning: unused import: `neon::*`
  --> engine/src/engine/eval/simd/mod.rs:12:17
   |
12 |         pub use neon::*;
   |                 ^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

error[E0080]: transmuting from 9-byte type to 12735040-byte type: `[u8; 9]` -> `RawNetwork`
  --> engine/src/engine/eval/nnue.rs:56:14
   |
56 |     unsafe { std::mem::transmute(*include_bytes!(env!("NETWORK"))) };
   |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ evaluation of `engine::eval::nnue::RAW_NETWORK` failed here

error[E0080]: transmuting from 9-byte type to 12735040-byte type: `[u8; 9]` -> `Network`
  --> engine/src/engine/eval/nnue.rs:57:44
   |
57 | pub static mut NETWORK: Network = unsafe { std::mem::transmute(*include_bytes!(env!("NETWORK"))) };
   |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ evaluation of `engine::eval::nnue::NETWORK` failed here

warning[E0133]: call to unsafe function `engine::eval::nnue::inference::propagate_l1` is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:16:18
   |
16 |     let act_l1 = propagate_l1(&act_ft, output_bucket);
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
   |
   = note: consult the function's documentation for information on how to avoid undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
  --> engine/src/engine/eval/nnue/inference.rs:12:1
   |
12 | pub unsafe fn forward(us: &Accumulator, them: &Accumulator, output_bucket: usize) -> i32 {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
   = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default

warning[E0133]: call to unsafe function `engine::eval::nnue::inference::propagate_l2` is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:19:18
   |
19 |     let act_l2 = propagate_l2(&act_l1, output_bucket);
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
   |
   = note: consult the function's documentation for information on how to avoid undefined behavior
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: call to unsafe function `engine::eval::nnue::inference::propagate_l3` is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:22:18
   |
22 |     let act_l3 = propagate_l3(&act_l2, output_bucket);
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
   |
   = note: consult the function's documentation for information on how to avoid undefined behavior
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: use of mutable static is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:50:52
   |
50 |             intermediate[l2] += input[l1] as i32 * NETWORK.l1_weights[output_bucket][l2][l1] as i32;
   |                                                    ^^^^^^^ use of mutable static
   |
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
  --> engine/src/engine/eval/nnue/inference.rs:45:1
   |
45 | unsafe fn propagate_l1(input: &[i8; L1], output_bucket: usize) -> [f32; L2] {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: use of mutable static is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:59:20
   |
59 |         let bias = NETWORK.l1_biases[output_bucket][l2];
   |                    ^^^^^^^ use of mutable static
   |
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: use of mutable static is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:68:22
   |
68 |     let mut output = NETWORK.l2_biases[output_bucket];
   |                      ^^^^^^^ use of mutable static
   |
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
  --> engine/src/engine/eval/nnue/inference.rs:67:1
   |
67 | unsafe fn propagate_l2(input: &[f32; L2], output_bucket: usize) -> [f32; L3] {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: use of mutable static is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:74:26
   |
74 |             let weight = NETWORK.l2_weights[output_bucket][l3][l2];
   |                          ^^^^^^^ use of mutable static
   |
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: use of mutable static is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:87:22
   |
87 |     let mut output = NETWORK.l3_biases[output_bucket];
   |                      ^^^^^^^ use of mutable static
   |
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
  --> engine/src/engine/eval/nnue/inference.rs:86:1
   |
86 | unsafe fn propagate_l3(input: &[f32; L3], output_bucket: usize) -> f32 {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

warning[E0133]: use of mutable static is unsafe and requires unsafe block
  --> engine/src/engine/eval/nnue/inference.rs:90:31
   |
90 |         output += input[l3] * NETWORK.l3_weights[output_bucket][l3];
   |                               ^^^^^^^ use of mutable static
   |
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>

error[E0512]: cannot transmute between types of different sizes, or dependently-sized types
  --> engine/src/engine/eval/nnue.rs:56:14
   |
56 |     unsafe { std::mem::transmute(*include_bytes!(env!("NETWORK"))) };
   |              ^^^^^^^^^^^^^^^^^^^
   |
   = note: source type: `[u8; 9]` (72 bits)
   = note: target type: `RawNetwork` (101880320 bits)

error[E0512]: cannot transmute between types of different sizes, or dependently-sized types
  --> engine/src/engine/eval/nnue.rs:57:44
   |
57 | pub static mut NETWORK: Network = unsafe { std::mem::transmute(*include_bytes!(env!("NETWORK"))) };
   |                                            ^^^^^^^^^^^^^^^^^^^
   |
   = note: source type: `[u8; 9]` (72 bits)
   = note: target type: `Network` (101880320 bits)

Some errors have detailed explanations: E0080, E0133, E0512.
For more information about an error, try `rustc --explain E0080`.
warning: `engine` (lib) generated 10 warnings
warning: engine@13.0.0-dev: Fetched network: multilayer.nnue
error: could not compile `engine` (lib) due to 4 previous errors; 10 warnings emitted
make: *** [build] Error 101