[INFO] fetching crate px4flow_bsp 0.2.0...
[INFO] checking px4flow_bsp-0.2.0 against nightly-2024-02-05 for check-cfg
[INFO] extracting crate px4flow_bsp 0.2.0 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate px4flow_bsp 0.2.0 on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-0-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-0-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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded panic-rtt-core v0.1.1
[INFO] [stderr]   Downloaded rtt-target v0.1.1
[INFO] [stderr]   Downloaded eeprom24x v0.3.0
[INFO] [stderr]   Downloaded l3gd20 v0.3.0
[INFO] [stderr]   Downloaded cortex-m v0.6.3
[INFO] [stderr]   Downloaded syn v1.0.35
[INFO] [stderr]   Downloaded stm32f4xx-hal v0.8.3
[INFO] [stderr]   Downloaded mt9v034-i2c v0.1.5
[INFO] [stderr]   Downloaded stm32f4 v0.11.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d2a2aea630fe8da9fda4b4cd064e19ade3d65f1ffbc6d556245d44ba0f16db55
[INFO] running `Command { std: "docker" "start" "-a" "d2a2aea630fe8da9fda4b4cd064e19ade3d65f1ffbc6d556245d44ba0f16db55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d2a2aea630fe8da9fda4b4cd064e19ade3d65f1ffbc6d556245d44ba0f16db55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2a2aea630fe8da9fda4b4cd064e19ade3d65f1ffbc6d556245d44ba0f16db55", kill_on_drop: false }`
[INFO] [stdout] d2a2aea630fe8da9fda4b4cd064e19ade3d65f1ffbc6d556245d44ba0f16db55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 465c5dd8e75a2637913437c865d1af67875609887bdbbf27ce497f994f54161e
[INFO] running `Command { std: "docker" "start" "-a" "465c5dd8e75a2637913437c865d1af67875609887bdbbf27ce497f994f54161e", 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]     Checking vcell v0.1.2
[INFO] [stderr]     Checking nb v1.0.0
[INFO] [stderr]     Checking bitfield v0.13.2
[INFO] [stderr]    Compiling syn v1.0.35
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling cortex-m-rt v0.6.12
[INFO] [stderr]    Compiling stm32f4 v0.11.0
[INFO] [stderr]     Checking r0 v0.2.2
[INFO] [stderr]    Compiling cortex-m v0.5.10
[INFO] [stderr]     Checking aligned v0.2.0
[INFO] [stderr]    Compiling px4flow_bsp v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking volatile-register v0.2.0
[INFO] [stderr]     Checking ufmt-write v0.1.0
[INFO] [stderr]     Checking nb v0.1.3
[INFO] [stderr]     Checking bare-metal v1.0.0
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking embedded-hal v0.2.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking eeprom24x v0.3.0
[INFO] [stderr]     Checking mt9v034-i2c v0.1.5
[INFO] [stderr]     Checking 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]     Checking generic-array v0.12.3
[INFO] [stderr]     Checking generic-array v0.13.2
[INFO] [stderr]     Checking as-slice v0.1.3
[INFO] [stderr]     Checking aligned v0.3.2
[INFO] [stderr]     Checking rtt-target v0.1.1
[INFO] [stderr]     Checking panic-rtt-core v0.1.1
[INFO] [stderr]     Checking shared-bus v0.1.4
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.1.8
[INFO] [stderr]     Checking 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: 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: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: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: 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: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: 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] [stdout] warning: 7 warnings emitted
[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] 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] [stdout] error: aborting due to 1 previous error; 2 warnings emitted
[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; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "465c5dd8e75a2637913437c865d1af67875609887bdbbf27ce497f994f54161e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "465c5dd8e75a2637913437c865d1af67875609887bdbbf27ce497f994f54161e", kill_on_drop: false }`
[INFO] [stdout] 465c5dd8e75a2637913437c865d1af67875609887bdbbf27ce497f994f54161e
[INFO] checking px4flow_bsp-0.2.0 against nightly-2024-02-05+rustflags=-Dunexpected_cfgs+cargoflags=-Zcheck-cfg for check-cfg
[INFO] extracting crate px4flow_bsp 0.2.0 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate px4flow_bsp 0.2.0 on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-0-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-0-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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 66ddd0335b5979e5038df714b96f2c253592509e53892632731c2a3d250dcc12
[INFO] running `Command { std: "docker" "start" "-a" "66ddd0335b5979e5038df714b96f2c253592509e53892632731c2a3d250dcc12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "66ddd0335b5979e5038df714b96f2c253592509e53892632731c2a3d250dcc12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66ddd0335b5979e5038df714b96f2c253592509e53892632731c2a3d250dcc12", kill_on_drop: false }`
[INFO] [stdout] 66ddd0335b5979e5038df714b96f2c253592509e53892632731c2a3d250dcc12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunexpected_cfgs" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zcheck-cfg", kill_on_drop: false }`
[INFO] [stdout] 966919b7f08fed94a3ec56735b08397caf8734ec5745bb8bb663d1c563c99754
[INFO] running `Command { std: "docker" "start" "-a" "966919b7f08fed94a3ec56735b08397caf8734ec5745bb8bb663d1c563c99754", 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]     Checking vcell v0.1.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.19
[INFO] [stderr]     Checking nb v1.0.0
[INFO] [stderr]     Checking bitfield v0.13.2
[INFO] [stderr]    Compiling syn v1.0.35
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling cortex-m-rt v0.6.12
[INFO] [stderr]     Checking r0 v0.2.2
[INFO] [stderr]    Compiling cortex-m v0.5.10
[INFO] [stderr]    Compiling stm32f4 v0.11.0
[INFO] [stderr]     Checking aligned v0.2.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling px4flow_bsp v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking volatile-register v0.2.0
[INFO] [stderr]     Checking ufmt-write v0.1.0
[INFO] [stderr]     Checking bare-metal v1.0.0
[INFO] [stderr]     Checking nb v0.1.3
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking embedded-hal v0.2.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking eeprom24x v0.3.0
[INFO] [stderr]     Checking mt9v034-i2c v0.1.5
[INFO] [stderr]     Checking 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]     Checking generic-array v0.13.2
[INFO] [stderr]     Checking generic-array v0.12.3
[INFO] [stderr]     Checking as-slice v0.1.3
[INFO] [stderr]     Checking aligned v0.3.2
[INFO] [stderr]     Checking rtt-target v0.1.1
[INFO] [stderr]     Checking panic-rtt-core v0.1.1
[INFO] [stderr]     Checking shared-bus v0.1.4
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.1.8
[INFO] [stderr]     Checking 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: 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] [stdout] warning: 7 warnings emitted
[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] 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] [stdout] error: aborting due to 1 previous error; 2 warnings emitted
[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; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "966919b7f08fed94a3ec56735b08397caf8734ec5745bb8bb663d1c563c99754", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "966919b7f08fed94a3ec56735b08397caf8734ec5745bb8bb663d1c563c99754", kill_on_drop: false }`
[INFO] [stdout] 966919b7f08fed94a3ec56735b08397caf8734ec5745bb8bb663d1c563c99754
