[INFO] fetching crate px4flow_bsp 0.2.0...
[INFO] testing px4flow_bsp-0.2.0 against 1.76.0 for beta-1.77-1
[INFO] extracting crate px4flow_bsp 0.2.0 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate px4flow_bsp 0.2.0 on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config
[INFO] started tweaking crates.io crate px4flow_bsp 0.2.0
[INFO] finished tweaking crates.io crate px4flow_bsp 0.2.0
[INFO] tweaked toml for crates.io crate px4flow_bsp 0.2.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] crate crates.io crate px4flow_bsp 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.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ufmt-write v0.1.0
[INFO] [stderr]   Downloaded aligned v0.3.2
[INFO] [stderr]   Downloaded aligned v0.2.0
[INFO] [stderr]   Downloaded stm32f4xx-hal v0.8.3
[INFO] [stderr]   Downloaded mt9v034-i2c v0.1.5
[INFO] [stderr]   Downloaded shared-bus v0.1.4
[INFO] [stderr]   Downloaded panic-rtt-core v0.1.1
[INFO] [stderr]   Downloaded rtt-target v0.1.1
[INFO] [stderr]   Downloaded l3gd20 v0.3.0
[INFO] [stderr]   Downloaded as-slice v0.1.3
[INFO] [stderr]   Downloaded eeprom24x v0.3.0
[INFO] [stderr]   Downloaded cortex-m-rt v0.6.12
[INFO] [stderr]   Downloaded cortex-m v0.5.10
[INFO] [stderr]   Downloaded cortex-m v0.6.3
[INFO] [stderr]   Downloaded stm32f4 v0.11.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6d60e68925f0a035d4354061665a4784b79d97874b33e24f6adb819c7ab4f0cb
[INFO] running `Command { std: "docker" "start" "-a" "6d60e68925f0a035d4354061665a4784b79d97874b33e24f6adb819c7ab4f0cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6d60e68925f0a035d4354061665a4784b79d97874b33e24f6adb819c7ab4f0cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d60e68925f0a035d4354061665a4784b79d97874b33e24f6adb819c7ab4f0cb", kill_on_drop: false }`
[INFO] [stdout] 6d60e68925f0a035d4354061665a4784b79d97874b33e24f6adb819c7ab4f0cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e4b73db4355cfc0fccf5fe8cc577fe69bb090ecfb5e26492a5abe873e7f0e22e
[INFO] running `Command { std: "docker" "start" "-a" "e4b73db4355cfc0fccf5fe8cc577fe69bb090ecfb5e26492a5abe873e7f0e22e", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling typenum v1.12.0
[INFO] [stderr]    Compiling cortex-m v0.6.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.19
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling nb v1.0.0
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling vcell v0.1.2
[INFO] [stderr]    Compiling syn v1.0.35
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling bitfield v0.13.2
[INFO] [stderr]    Compiling cortex-m-rt v0.6.12
[INFO] [stderr]    Compiling cortex-m v0.5.10
[INFO] [stderr]    Compiling r0 v0.2.2
[INFO] [stderr]    Compiling stm32f4 v0.11.0
[INFO] [stderr]    Compiling aligned v0.2.0
[INFO] [stderr]    Compiling volatile-register v0.2.0
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling px4flow_bsp v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling bare-metal v1.0.0
[INFO] [stderr]    Compiling embedded-hal v0.2.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling l3gd20 v0.3.0
[INFO] [stderr]    Compiling mt9v034-i2c v0.1.5
[INFO] [stderr]    Compiling eeprom24x v0.3.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling bare-metal v0.2.5
[INFO] [stderr]    Compiling cast v0.2.3
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]    Compiling generic-array v0.13.2
[INFO] [stderr]    Compiling generic-array v0.12.3
[INFO] [stderr]    Compiling as-slice v0.1.3
[INFO] [stderr]    Compiling aligned v0.3.2
[INFO] [stderr]    Compiling shared-bus v0.1.4
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.1.8
[INFO] [stderr]    Compiling stm32f4xx-hal v0.8.3
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 16.38s
[INFO] running `Command { std: "docker" "inspect" "e4b73db4355cfc0fccf5fe8cc577fe69bb090ecfb5e26492a5abe873e7f0e22e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4b73db4355cfc0fccf5fe8cc577fe69bb090ecfb5e26492a5abe873e7f0e22e", kill_on_drop: false }`
[INFO] [stdout] e4b73db4355cfc0fccf5fe8cc577fe69bb090ecfb5e26492a5abe873e7f0e22e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a0b2eee6853ed96328f0e1f1df4b967f35d3665df5d7ec325c7a33bf1957ad29
[INFO] running `Command { std: "docker" "start" "-a" "a0b2eee6853ed96328f0e1f1df4b967f35d3665df5d7ec325c7a33bf1957ad29", kill_on_drop: false }`
[INFO] [stderr]    Compiling ufmt-write v0.1.0
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stderr]    Compiling rtt-target v0.1.1
[INFO] [stderr]    Compiling panic-rtt-core v0.1.1
[INFO] [stderr]    Compiling px4flow_bsp v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: language item required, but not found: `eh_personality`
[INFO] [stdout]   |
[INFO] [stdout]   = note: this can occur when a binary crate with `#![no_std]` is compiled for a target where `eh_personality` is defined in the standard library
[INFO] [stdout]   = help: you may be able to compile for a target that doesn't need `eh_personality`, specify a target with `--target` or in `.cargo/config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `px4flow_bsp` (example "gyro") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `px4flow_bsp` (example "play") due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "a0b2eee6853ed96328f0e1f1df4b967f35d3665df5d7ec325c7a33bf1957ad29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0b2eee6853ed96328f0e1f1df4b967f35d3665df5d7ec325c7a33bf1957ad29", kill_on_drop: false }`
[INFO] [stdout] a0b2eee6853ed96328f0e1f1df4b967f35d3665df5d7ec325c7a33bf1957ad29
[INFO] testing px4flow_bsp-0.2.0 against beta-2024-02-10 for beta-1.77-1
[INFO] extracting crate px4flow_bsp 0.2.0 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate px4flow_bsp 0.2.0 on toolchain beta-2024-02-10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-3-tc2/source/.cargo/config
[INFO] started tweaking crates.io crate px4flow_bsp 0.2.0
[INFO] finished tweaking crates.io crate px4flow_bsp 0.2.0
[INFO] tweaked toml for crates.io crate px4flow_bsp 0.2.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] crate crates.io crate px4flow_bsp 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" "+beta-2024-02-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 856e83bd88c682a2e956eb7c5805ba882819c109c223f7df792ae022119ef798
[INFO] running `Command { std: "docker" "start" "-a" "856e83bd88c682a2e956eb7c5805ba882819c109c223f7df792ae022119ef798", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "856e83bd88c682a2e956eb7c5805ba882819c109c223f7df792ae022119ef798", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "856e83bd88c682a2e956eb7c5805ba882819c109c223f7df792ae022119ef798", kill_on_drop: false }`
[INFO] [stdout] 856e83bd88c682a2e956eb7c5805ba882819c109c223f7df792ae022119ef798
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 27547c5a106b73c6971750a50485e66d7e3bc755ec68f82d9b8bae92f9df3d58
[INFO] running `Command { std: "docker" "start" "-a" "27547c5a106b73c6971750a50485e66d7e3bc755ec68f82d9b8bae92f9df3d58", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling typenum v1.12.0
[INFO] [stderr]    Compiling cortex-m v0.6.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.19
[INFO] [stderr]    Compiling nb v1.0.0
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling vcell v0.1.2
[INFO] [stderr]    Compiling syn v1.0.35
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling bitfield v0.13.2
[INFO] [stderr]    Compiling cortex-m-rt v0.6.12
[INFO] [stderr]    Compiling r0 v0.2.2
[INFO] [stderr]    Compiling stm32f4 v0.11.0
[INFO] [stderr]    Compiling cortex-m v0.5.10
[INFO] [stderr]    Compiling aligned v0.2.0
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling volatile-register v0.2.0
[INFO] [stderr]    Compiling px4flow_bsp v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling bare-metal v1.0.0
[INFO] [stderr]    Compiling embedded-hal v0.2.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling eeprom24x v0.3.0
[INFO] [stderr]    Compiling mt9v034-i2c v0.1.5
[INFO] [stderr]    Compiling l3gd20 v0.3.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling bare-metal v0.2.5
[INFO] [stderr]    Compiling cast v0.2.3
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]    Compiling generic-array v0.13.2
[INFO] [stderr]    Compiling generic-array v0.12.3
[INFO] [stderr]    Compiling as-slice v0.1.3
[INFO] [stderr]    Compiling aligned v0.3.2
[INFO] [stderr]    Compiling shared-bus v0.1.4
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.1.8
[INFO] [stderr]    Compiling stm32f4xx-hal v0.8.3
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]   --> src/board.rs:78:52
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let mut stopwatch = dwt.stopwatch(unsafe { &mut STOPWATCH_BUF });
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]    = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]    = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let mut stopwatch = dwt.stopwatch(unsafe { addr_of_mut!(STOPWATCH_BUF) });
[INFO] [stdout]    |                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:100:35
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let buf0_addr = unsafe { (&IMG_BUF0 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let buf0_addr = unsafe { (addr_of!(IMG_BUF0) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:101:35
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let buf1_addr = unsafe { (&IMG_BUF1 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let buf1_addr = unsafe { (addr_of!(IMG_BUF1) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:102:35
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let buf2_addr = unsafe { (&IMG_BUF2 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let buf2_addr = unsafe { (addr_of!(IMG_BUF2) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:22
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [addr_of_mut!(IMG_BUF0), &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:37
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, addr_of_mut!(IMG_BUF1), &mut IMG_BUF2]
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:52
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, addr_of_mut!(IMG_BUF2)]
[INFO] [stdout]     |                                                    ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 18.37s
[INFO] running `Command { std: "docker" "inspect" "27547c5a106b73c6971750a50485e66d7e3bc755ec68f82d9b8bae92f9df3d58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "27547c5a106b73c6971750a50485e66d7e3bc755ec68f82d9b8bae92f9df3d58", kill_on_drop: false }`
[INFO] [stdout] 27547c5a106b73c6971750a50485e66d7e3bc755ec68f82d9b8bae92f9df3d58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 83b57ebcd66dcd35634260db438666ac356bfd9eba1ffec12b3e9905bab78247
[INFO] running `Command { std: "docker" "start" "-a" "83b57ebcd66dcd35634260db438666ac356bfd9eba1ffec12b3e9905bab78247", kill_on_drop: false }`
[INFO] [stderr]    Compiling ufmt-write v0.1.0
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]   --> src/board.rs:78:52
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let mut stopwatch = dwt.stopwatch(unsafe { &mut STOPWATCH_BUF });
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]    = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]    = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let mut stopwatch = dwt.stopwatch(unsafe { addr_of_mut!(STOPWATCH_BUF) });
[INFO] [stdout]    |                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:100:35
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let buf0_addr = unsafe { (&IMG_BUF0 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let buf0_addr = unsafe { (addr_of!(IMG_BUF0) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:101:35
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let buf1_addr = unsafe { (&IMG_BUF1 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let buf1_addr = unsafe { (addr_of!(IMG_BUF1) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:102:35
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let buf2_addr = unsafe { (&IMG_BUF2 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let buf2_addr = unsafe { (addr_of!(IMG_BUF2) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:22
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [addr_of_mut!(IMG_BUF0), &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:37
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, addr_of_mut!(IMG_BUF1), &mut IMG_BUF2]
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:52
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, addr_of_mut!(IMG_BUF2)]
[INFO] [stdout]     |                                                    ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rtt-target v0.1.1
[INFO] [stderr]    Compiling panic-rtt-core v0.1.1
[INFO] [stderr]    Compiling px4flow_bsp v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]   --> examples/play.rs:77:43
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let fast_img_bufs: [_; 2] = unsafe { [&mut FAST_IMG0, &mut FAST_IMG1] };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]    = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]    = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let fast_img_bufs: [_; 2] = unsafe { [addr_of_mut!(FAST_IMG0), &mut FAST_IMG1] };
[INFO] [stdout]    |                                           ~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]   --> examples/play.rs:77:59
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let fast_img_bufs: [_; 2] = unsafe { [&mut FAST_IMG0, &mut FAST_IMG1] };
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]    = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let fast_img_bufs: [_; 2] = unsafe { [&mut FAST_IMG0, addr_of_mut!(FAST_IMG1)] };
[INFO] [stdout]    |                                                           ~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `px4flow_bsp` (example "gyro") due to 2 previous errors
[INFO] [stdout] error: aborting due to 1 previous error; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `px4flow_bsp` (example "play") due to 2 previous errors; 2 warnings emitted
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]   --> src/board.rs:78:52
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let mut stopwatch = dwt.stopwatch(unsafe { &mut STOPWATCH_BUF });
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]    = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout]    = note: `#[warn(static_mut_ref)]` on by default
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let mut stopwatch = dwt.stopwatch(unsafe { addr_of_mut!(STOPWATCH_BUF) });
[INFO] [stdout]    |                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:100:35
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let buf0_addr = unsafe { (&IMG_BUF0 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let buf0_addr = unsafe { (addr_of!(IMG_BUF0) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:101:35
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let buf1_addr = unsafe { (&IMG_BUF1 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let buf1_addr = unsafe { (addr_of!(IMG_BUF1) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: shared reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:102:35
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let buf2_addr = unsafe { (&IMG_BUF2 as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ^^^^^^^^^ shared reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: shared references are dangerous since if there's any kind of mutation of that static while the reference lives, that's UB; use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let buf2_addr = unsafe { (addr_of!(IMG_BUF2) as *const ImageFrameBuf) } as u32;
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:22
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [addr_of_mut!(IMG_BUF0), &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:37
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, addr_of_mut!(IMG_BUF1), &mut IMG_BUF2]
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: mutable reference of mutable static is discouraged
[INFO] [stdout]    --> src/dcmi.rs:123:52
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, &mut IMG_BUF2]
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^ mutable reference of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: reference of mutable static is a hard error from 2024 edition
[INFO] [stdout]     = note: mutable statics can be written to by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] help: mutable references are dangerous since if there's any other pointer or reference used for that static while the reference lives, that's UB; use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     [&mut IMG_BUF0, &mut IMG_BUF1, addr_of_mut!(IMG_BUF2)]
[INFO] [stdout]     |                                                    ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "83b57ebcd66dcd35634260db438666ac356bfd9eba1ffec12b3e9905bab78247", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83b57ebcd66dcd35634260db438666ac356bfd9eba1ffec12b3e9905bab78247", kill_on_drop: false }`
[INFO] [stdout] 83b57ebcd66dcd35634260db438666ac356bfd9eba1ffec12b3e9905bab78247
