[INFO] cloning repository https://github.com/CheeseyBob/rust_graphics_test
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/CheeseyBob/rust_graphics_test" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCheeseyBob%2Frust_graphics_test", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCheeseyBob%2Frust_graphics_test'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 925a2fdc293a89eaf71293d39176c1bb47cffa1b
[INFO] checking CheeseyBob/rust_graphics_test against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCheeseyBob%2Frust_graphics_test" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/CheeseyBob/rust_graphics_test
[INFO] finished tweaking git repo https://github.com/CheeseyBob/rust_graphics_test
[INFO] tweaked toml for git repo https://github.com/CheeseyBob/rust_graphics_test written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/CheeseyBob/rust_graphics_test on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/CheeseyBob/rust_graphics_test 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded windows-targets v0.48.0
[INFO] [stderr]   Downloaded cocoa-foundation v0.1.1
[INFO] [stderr]   Downloaded hermit-abi v0.3.1
[INFO] [stderr]   Downloaded strict-num v0.1.0
[INFO] [stderr]   Downloaded simd-adler32 v0.3.5
[INFO] [stderr]   Downloaded wayland-sys v0.30.1
[INFO] [stderr]   Downloaded bumpalo v3.12.1
[INFO] [stderr]   Downloaded tiny-skia-path v0.8.4
[INFO] [stderr]   Downloaded getrandom v0.2.9
[INFO] [stderr]   Downloaded softbuffer v0.2.0
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.14
[INFO] [stderr]   Downloaded wayland-scanner v0.30.0
[INFO] [stderr]   Downloaded io-lifetimes v1.0.10
[INFO] [stderr]   Downloaded sctk-adwaita v0.5.4
[INFO] [stderr]   Downloaded wayland-client v0.30.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.56
[INFO] [stderr]   Downloaded quote v1.0.26
[INFO] [stderr]   Downloaded wayland-backend v0.1.2
[INFO] [stderr]   Downloaded matrixmultiply v0.3.4
[INFO] [stderr]   Downloaded png v0.17.8
[INFO] [stderr]   Downloaded wide v0.7.8
[INFO] [stderr]   Downloaded tiny-skia v0.8.4
[INFO] [stderr]   Downloaded quick-xml v0.23.1
[INFO] [stderr]   Downloaded winnow v0.4.1
[INFO] [stderr]   Downloaded ttf-parser v0.19.0
[INFO] [stderr]   Downloaded x11rb v0.11.1
[INFO] [stderr]   Downloaded syn v2.0.15
[INFO] [stderr]   Downloaded winit v0.28.3
[INFO] [stderr]   Downloaded x11rb-protocol v0.11.1
[INFO] [stderr]   Downloaded libc v0.2.142
[INFO] [stderr]   Downloaded orbclient v0.3.44
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 18442685767cbfcdcf6947d1b0e28a3e7caa63fa67e0d879d567b980d2cf07eb
[INFO] running `Command { std: "docker" "start" "-a" "18442685767cbfcdcf6947d1b0e28a3e7caa63fa67e0d879d567b980d2cf07eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "18442685767cbfcdcf6947d1b0e28a3e7caa63fa67e0d879d567b980d2cf07eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "18442685767cbfcdcf6947d1b0e28a3e7caa63fa67e0d879d567b980d2cf07eb", kill_on_drop: false }`
[INFO] [stdout] 18442685767cbfcdcf6947d1b0e28a3e7caa63fa67e0d879d567b980d2cf07eb
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 600b067b1d179cd465d2d22b72d7419e4b15e27de0357fb4b7b6e5fcb34ade1d
[INFO] running `Command { std: "docker" "start" "-a" "600b067b1d179cd465d2d22b72d7419e4b15e27de0357fb4b7b6e5fcb34ade1d", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.142
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling pkg-config v0.3.26
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]    Compiling xml-rs v0.8.4
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]     Checking once_cell v1.17.1
[INFO] [stderr]     Checking smallvec v1.10.0
[INFO] [stderr]     Checking bytemuck v1.13.1
[INFO] [stderr]     Checking downcast-rs v1.2.0
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]     Checking dlib v0.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling slotmap v1.0.6
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]     Checking simd-adler32 v0.3.5
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.14
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking fdeflate v0.3.0
[INFO] [stderr]    Compiling wayland-backend v0.1.2
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling wayland-sys v0.30.1
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.16.0
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking arrayref v0.3.7
[INFO] [stderr]     Checking strict-num v0.1.0
[INFO] [stderr]    Compiling paste v1.0.12
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking ttf-parser v0.19.0
[INFO] [stderr]     Checking tiny-skia-path v0.8.4
[INFO] [stderr]     Checking flate2 v1.0.25
[INFO] [stderr]    Compiling quick-xml v0.23.1
[INFO] [stderr]     Checking safe_arch v0.6.0
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.4
[INFO] [stderr]     Checking arrayvec v0.7.2
[INFO] [stderr]     Checking crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling softbuffer v0.2.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling syn v2.0.15
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking png v0.17.8
[INFO] [stderr]     Checking num-complex v0.4.3
[INFO] [stderr]     Checking raw-window-handle v0.5.2
[INFO] [stderr]     Checking wide v0.7.8
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]     Checking percent-encoding v2.2.0
[INFO] [stderr]    Compiling wayland-scanner v0.30.0
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking nix v0.25.1
[INFO] [stderr]     Checking nix v0.26.2
[INFO] [stderr]     Checking getrandom v0.2.9
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]     Checking gethostname v0.2.3
[INFO] [stderr]     Checking mio v0.8.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rayon-core v1.11.0
[INFO] [stderr]     Checking tiny-skia v0.8.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling winit v0.28.3
[INFO] [stderr]     Checking owned_ttf_parser v0.19.0
[INFO] [stderr]     Checking ab_glyph v0.2.21
[INFO] [stderr]     Checking xcursor v0.3.4
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]     Checking wayland-commons v0.29.5
[INFO] [stderr]     Checking x11rb-protocol v0.11.1
[INFO] [stderr]     Checking calloop v0.10.5
[INFO] [stderr]     Checking wayland-cursor v0.29.5
[INFO] [stderr]    Compiling nalgebra-macros v0.2.0
[INFO] [stderr]     Checking wayland-client v0.30.1
[INFO] [stderr]     Checking nalgebra v0.32.2
[INFO] [stderr]     Checking x11rb v0.11.1
[INFO] [stderr]     Checking sctk-adwaita v0.5.4
[INFO] [stderr]     Checking graphics_test v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/world_processor.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let mut entity = WORLD.as_mut().unwrap().get_entity_mut(location)
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/entity.rs:23:36
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn determine_action(&self, world: &World) -> Action {
[INFO] [stdout]    |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/main.rs:119:33
[INFO] [stdout]     |
[INFO] [stdout] 119 |     None, Exit, RedrawRequested(WindowId), Tick
[INFO] [stdout]     |                 --------------- ^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 119 -     None, Exit, RedrawRequested(WindowId), Tick
[INFO] [stdout] 119 +     None, Exit, RedrawRequested(()), Tick
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output_layer_size` is never read
[INFO] [stdout]   --> src/matrix_test.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct NeuralNet {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 53 |     input_layer_size: usize,
[INFO] [stdout] 54 |     output_layer_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `step` is never used
[INFO] [stdout]   --> src/entity.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Entity {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn step(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/graphics_window.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         PIXEL_BUFFER.set_all(color.0);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/graphics_window.rs:91:42
[INFO] [stdout]    |
[INFO] [stdout] 91 |     graphics_context.set_buffer(unsafe { &PIXEL_BUFFER }, width() as u16, height() as u16);
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 91 |     graphics_context.set_buffer(unsafe { &raw const PIXEL_BUFFER }, width() as u16, height() as u16);
[INFO] [stdout]    |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/world.rs:56:30
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn iter_entities_par(&self) -> Iter<Entity> {
[INFO] [stdout]    |                              ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn iter_entities_par(&self) -> Iter<'_, Entity> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 |     unsafe { WORLD.is_some() }
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ACTION_GRID.get_unchecked(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ACTION_GRID.get_unchecked_mut(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     CONFLICT_GRID.get_unchecked(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     CONFLICT_GRID.get_unchecked_mut(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     OUTCOME_GRID.get_unchecked(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     OUTCOME_GRID.get_unchecked_mut(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ACTION_GRID.resize_with(size, || { None });
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         CONFLICT_GRID.resize_with(size, || { Conflict::none() });
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         OUTCOME_GRID.resize_with(size, || { None });
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     WORLD.as_ref().unwrap().iter_entities_par().for_each(|entity| {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CONFLICT_GRID.par_iter_mut().for_each(|conflict| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     LOCATIONS.clear();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:136:17
[INFO] [stdout]     |
[INFO] [stdout] 136 |     LOCATIONS = WORLD.as_ref().unwrap().iter_entities_par()
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 |     let entity =WORLD.as_ref().unwrap().get_entity(location)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:173:42
[INFO] [stdout]     |
[INFO] [stdout] 173 |     let action = entity.determine_action(WORLD.as_ref().unwrap());
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:178:37
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let conflict_location = WORLD.as_ref().unwrap().add(&entity.location, &direction);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:193:38
[INFO] [stdout]     |
[INFO] [stdout] 193 |             let conflict_direction = WORLD.as_ref().unwrap().add(location, direction);
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:204:18
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let entity = WORLD.as_ref().unwrap().get_entity(location)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:209:46
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let outcome = action.resolve(entity, WORLD.as_ref().unwrap());
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:229:5
[INFO] [stdout]     |
[INFO] [stdout] 229 |     WORLD.as_mut().unwrap().move_entity(location, direction)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:235:22
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let mut entity = WORLD.as_mut().unwrap().get_entity_mut(location)
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/world_processor.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let mut entity = WORLD.as_mut().unwrap().get_entity_mut(location)
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/entity.rs:23:36
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn determine_action(&self, world: &World) -> Action {
[INFO] [stdout]    |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/main.rs:119:33
[INFO] [stdout]     |
[INFO] [stdout] 119 |     None, Exit, RedrawRequested(WindowId), Tick
[INFO] [stdout]     |                 --------------- ^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 119 -     None, Exit, RedrawRequested(WindowId), Tick
[INFO] [stdout] 119 +     None, Exit, RedrawRequested(()), Tick
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output_layer_size` is never read
[INFO] [stdout]   --> src/matrix_test.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct NeuralNet {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 53 |     input_layer_size: usize,
[INFO] [stdout] 54 |     output_layer_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `step` is never used
[INFO] [stdout]   --> src/entity.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Entity {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn step(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/graphics_window.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         PIXEL_BUFFER.set_all(color.0);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/graphics_window.rs:91:42
[INFO] [stdout]    |
[INFO] [stdout] 91 |     graphics_context.set_buffer(unsafe { &PIXEL_BUFFER }, width() as u16, height() as u16);
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 91 |     graphics_context.set_buffer(unsafe { &raw const PIXEL_BUFFER }, width() as u16, height() as u16);
[INFO] [stdout]    |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/world.rs:56:30
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn iter_entities_par(&self) -> Iter<Entity> {
[INFO] [stdout]    |                              ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn iter_entities_par(&self) -> Iter<'_, Entity> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 |     unsafe { WORLD.is_some() }
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ACTION_GRID.get_unchecked(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ACTION_GRID.get_unchecked_mut(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     CONFLICT_GRID.get_unchecked(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     CONFLICT_GRID.get_unchecked_mut(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     OUTCOME_GRID.get_unchecked(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     OUTCOME_GRID.get_unchecked_mut(location.index())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ACTION_GRID.resize_with(size, || { None });
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         CONFLICT_GRID.resize_with(size, || { Conflict::none() });
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         OUTCOME_GRID.resize_with(size, || { None });
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/world_processor.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     WORLD.as_ref().unwrap().iter_entities_par().for_each(|entity| {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CONFLICT_GRID.par_iter_mut().for_each(|conflict| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     LOCATIONS.clear();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:136:17
[INFO] [stdout]     |
[INFO] [stdout] 136 |     LOCATIONS = WORLD.as_ref().unwrap().iter_entities_par()
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     LOCATIONS.par_iter().for_each(|location| {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 |     let entity =WORLD.as_ref().unwrap().get_entity(location)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:173:42
[INFO] [stdout]     |
[INFO] [stdout] 173 |     let action = entity.determine_action(WORLD.as_ref().unwrap());
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:178:37
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let conflict_location = WORLD.as_ref().unwrap().add(&entity.location, &direction);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:193:38
[INFO] [stdout]     |
[INFO] [stdout] 193 |             let conflict_direction = WORLD.as_ref().unwrap().add(location, direction);
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:204:18
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let entity = WORLD.as_ref().unwrap().get_entity(location)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:209:46
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let outcome = action.resolve(entity, WORLD.as_ref().unwrap());
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:229:5
[INFO] [stdout]     |
[INFO] [stdout] 229 |     WORLD.as_mut().unwrap().move_entity(location, direction)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/world_processor.rs:235:22
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let mut entity = WORLD.as_mut().unwrap().get_entity_mut(location)
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 56.45s
[INFO] running `Command { std: "docker" "inspect" "600b067b1d179cd465d2d22b72d7419e4b15e27de0357fb4b7b6e5fcb34ade1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "600b067b1d179cd465d2d22b72d7419e4b15e27de0357fb4b7b6e5fcb34ade1d", kill_on_drop: false }`
[INFO] [stdout] 600b067b1d179cd465d2d22b72d7419e4b15e27de0357fb4b7b6e5fcb34ade1d
