[INFO] fetching crate embassy-rp 0.2.0... [INFO] checking embassy-rp-0.2.0 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate embassy-rp 0.2.0 into /workspace/builds/worker-7-tc2/source [INFO] validating manifest of crates.io crate embassy-rp 0.2.0 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate embassy-rp 0.2.0 [INFO] finished tweaking crates.io crate embassy-rp 0.2.0 [INFO] tweaked toml for crates.io crate embassy-rp 0.2.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 153 packages to latest compatible versions [INFO] [stderr] Adding bare-metal v0.2.5 (available: v1.0.0) [INFO] [stderr] Adding bit-set v0.5.3 (available: v0.8.0) [INFO] [stderr] Adding bit-vec v0.6.3 (available: v0.8.0) [INFO] [stderr] Adding bitfield v0.13.2 (available: v0.17.0) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding embedded-hal v0.2.7 (available: v1.0.0) [INFO] [stderr] Adding fixedbitset v0.4.2 (available: v0.5.7) [INFO] [stderr] Adding itertools v0.10.5 (available: v0.13.0) [INFO] [stderr] Adding lalrpop v0.19.12 (available: v0.21.0) [INFO] [stderr] Adding lalrpop-util v0.19.12 (available: v0.21.0) [INFO] [stderr] Adding nb v0.1.3 (available: v1.1.0) [INFO] [stderr] Adding num_enum v0.5.11 (available: v0.7.3) [INFO] [stderr] Adding num_enum_derive v0.5.11 (available: v0.7.3) [INFO] [stderr] Adding phf_shared v0.10.0 (available: v0.11.2) [INFO] [stderr] Adding regex-syntax v0.6.29 (available: v0.8.4) [INFO] [stderr] Adding rustc_version v0.2.3 (available: v0.4.1) [INFO] [stderr] Adding semver v0.9.0 (available: v1.0.23) [INFO] [stderr] Adding semver-parser v0.7.0 (available: v0.10.2) [INFO] [stderr] Adding siphasher v0.3.11 (available: v1.0.1) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.77) [INFO] [stderr] Adding term v0.7.0 (available: v1.0.0) [INFO] [stderr] Adding unicode-width v0.1.14 (available: v0.2.0) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d05369f6ca71298620b068cace24bde9a9b0ac1ccce074e305c86cb22eb63e7c [INFO] running `Command { std: "docker" "start" "-a" "d05369f6ca71298620b068cace24bde9a9b0ac1ccce074e305c86cb22eb63e7c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d05369f6ca71298620b068cace24bde9a9b0ac1ccce074e305c86cb22eb63e7c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d05369f6ca71298620b068cace24bde9a9b0ac1ccce074e305c86cb22eb63e7c", kill_on_drop: false }` [INFO] [stdout] d05369f6ca71298620b068cace24bde9a9b0ac1ccce074e305c86cb22eb63e7c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 806a3307957bab5a18131d510118a576b49bb69533f3a2df317d56cf161bf254 [INFO] running `Command { std: "docker" "start" "-a" "806a3307957bab5a18131d510118a576b49bb69533f3a2df317d56cf161bf254", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Fixed Cargo.toml (2 fixes) [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling regex-syntax v0.8.4 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Checking nb v0.1.3 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Checking critical-section v1.1.3 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling phf_shared v0.10.0 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking embedded-hal v0.2.7 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling diff v0.1.13 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling cortex-m-rt v0.7.3 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling ena v0.14.3 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling debug-helper v0.3.13 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling crc-any v2.5.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling az v1.2.1 [INFO] [stderr] Checking cortex-m v0.7.7 [INFO] [stderr] Compiling indexmap v2.5.0 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling rp-pac v6.0.0 [INFO] [stderr] Checking embedded-storage v0.3.1 [INFO] [stderr] Compiling rp2040-boot2 v0.3.0 [INFO] [stderr] Compiling portable-atomic v1.8.0 [INFO] [stderr] Compiling fixed v1.28.0 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling is-terminal v0.4.13 [INFO] [stderr] Compiling embassy-hal-internal v0.2.0 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling term v0.7.0 [INFO] [stderr] Compiling atomic-polyfill v1.0.3 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Checking embedded-storage-async v0.4.1 [INFO] [stderr] Checking embassy-time v0.3.2 [INFO] [stderr] Checking embassy-sync v0.6.0 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling ascii-canvas v3.0.0 [INFO] [stderr] Compiling string_cache v0.8.7 [INFO] [stderr] Compiling codespan-reporting v0.11.1 [INFO] [stderr] Checking half v2.4.1 [INFO] [stderr] Compiling embassy-rp v0.2.0 (/tmp/fixit) [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Checking bytemuck v1.18.0 [INFO] [stderr] Compiling embassy-executor v0.6.0 [INFO] [stderr] Checking embassy-embedded-hal v0.2.0 [INFO] [stderr] Checking embedded-hal-nb v1.0.0 [INFO] [stderr] Checking embassy-usb-driver v0.1.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling regex-automata v0.4.7 [INFO] [stderr] Checking static_cell v2.1.0 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling regex v1.10.6 [INFO] [stderr] Compiling lalrpop-util v0.19.12 [INFO] [stderr] Compiling lalrpop v0.19.12 [INFO] [stderr] Compiling num_enum_derive v0.5.11 [INFO] [stderr] Compiling cortex-m-rt-macros v0.7.0 [INFO] [stderr] Compiling num_enum v0.5.11 [INFO] [stderr] Compiling pio v0.2.1 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling embassy-executor-macros v0.5.0 [INFO] [stderr] Compiling pio-parser v0.2.2 [INFO] [stderr] Compiling pio-proc v0.2.2 [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `embassy_rp` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/adc.rs [INFO] [stderr] * src/clocks.rs [INFO] [stderr] * src/dma.rs [INFO] [stderr] * src/flash.rs [INFO] [stderr] * src/float/mod.rs [INFO] [stderr] * src/fmt.rs [INFO] [stderr] * src/gpio.rs [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/multicore.rs [INFO] [stderr] * src/pio/mod.rs [INFO] [stderr] * src/pwm.rs [INFO] [stderr] * src/rom_data.rs [INFO] [stderr] * src/spi.rs [INFO] [stderr] * src/uart/mod.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:119:21 [INFO] [stderr] | [INFO] [stderr] 119 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:133:21 [INFO] [stderr] | [INFO] [stderr] 133 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:147:21 [INFO] [stderr] | [INFO] [stderr] 147 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:161:21 [INFO] [stderr] | [INFO] [stderr] 161 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:175:21 [INFO] [stderr] | [INFO] [stderr] 175 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:198:6 [INFO] [stderr] | [INFO] [stderr] 198 | ($arg:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:206:6 [INFO] [stderr] | [INFO] [stderr] 206 | ($arg:expr_2021, $($msg:expr_2021),+ $(,)? ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:206:24 [INFO] [stderr] | [INFO] [stderr] 206 | ($arg:expr_2021, $($msg:expr_2021),+ $(,)? ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/adc.rs:419:18 [INFO] [stderr] | [INFO] [stderr] 419 | ($pin:ident, $channel:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/clocks.rs:773:19 [INFO] [stderr] | [INFO] [stderr] 773 | ($name:ident, $pin_num:expr_2021, $gpin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/clocks.rs:773:39 [INFO] [stderr] | [INFO] [stderr] 773 | ($name:ident, $pin_num:expr_2021, $gpin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/clocks.rs:823:19 [INFO] [stderr] | [INFO] [stderr] 823 | ($name:ident, $gpout_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/dma.rs:272:19 [INFO] [stderr] | [INFO] [stderr] 272 | ($name:ident, $num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/float/mod.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | ($ty:ident, $ity:ident, $bits:expr_2021, $significand_bits:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/float/mod.rs:114:46 [INFO] [stderr] | [INFO] [stderr] 114 | ($ty:ident, $ity:ident, $bits:expr_2021, $significand_bits:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/gpio.rs:911:19 [INFO] [stderr] | [INFO] [stderr] 911 | ($name:ident, $bank:expr_2021, $pin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/gpio.rs:911:36 [INFO] [stderr] | [INFO] [stderr] 911 | ($name:ident, $bank:expr_2021, $pin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/pwm.rs:347:19 [INFO] [stderr] | [INFO] [stderr] 347 | ($name:ident, $num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/spi.rs:460:31 [INFO] [stderr] | [INFO] [stderr] 460 | ($type:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/spi.rs:460:51 [INFO] [stderr] | [INFO] [stderr] 460 | ($type:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/uart/mod.rs:1259:31 [INFO] [stderr] | [INFO] [stderr] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/uart/mod.rs:1259:51 [INFO] [stderr] | [INFO] [stderr] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/pio/mod.rs:1192:19 [INFO] [stderr] | [INFO] [stderr] 1192 | ($name:ident, $pio:expr_2021, $pac:ident, $funcsel:ident, $irq:ident) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: custom attribute panicked [INFO] [stderr] --> src/multicore.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | #[interrupt] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: `#[interrupt]` must be applied to a function: Error("expected path") [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/flash.rs:600:33 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `len` [INFO] [stderr] --> src/flash.rs:600:44 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_len` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/flash.rs:600:54 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ptrs` [INFO] [stderr] --> src/flash.rs:600:75 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cmd` [INFO] [stderr] --> src/flash.rs:761:32 [INFO] [stderr] | [INFO] [stderr] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ptrs` [INFO] [stderr] --> src/flash.rs:761:51 [INFO] [stderr] | [INFO] [stderr] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/lib.rs:279:5 [INFO] [stderr] | [INFO] [stderr] 279 | unsafe { install_stack_guard(core::ptr::addr_of_mut!(_stack_end)) } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] error: aborting due to 24 previous errors; 70 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:599:7 [INFO] [stdout] | [INFO] [stdout] 599 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] = note: `--force-warn unsafe-attr-outside-unsafe` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 599 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:760:7 [INFO] [stdout] | [INFO] [stdout] 760 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 760 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/multicore.rs:89:3 [INFO] [stdout] | [INFO] [stdout] 89 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 89 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/lib.rs:224:11 [INFO] [stdout] | [INFO] [stdout] 224 | #[link_section = ".boot2"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] ... [INFO] [stdout] 231 | / select_bootloader! { [INFO] [stdout] 232 | | "boot2-at25sf128a" => BOOT_LOADER_AT25SF128A, [INFO] [stdout] 233 | | "boot2-gd25q64cs" => BOOT_LOADER_GD25Q64CS, [INFO] [stdout] 234 | | "boot2-generic-03h" => BOOT_LOADER_GENERIC_03H, [INFO] [stdout] ... | [INFO] [stdout] 239 | | default => BOOT_LOADER_W25Q080 [INFO] [stdout] 240 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] = note: this warning originates in the macro `select_bootloader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 224 | #[unsafe(link_section = ".boot2")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:119:24 [INFO] [stdout] | [INFO] [stdout] 119 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 119 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:133:24 [INFO] [stdout] | [INFO] [stdout] 133 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 133 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:147:24 [INFO] [stdout] | [INFO] [stdout] 147 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 147 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:161:24 [INFO] [stdout] | [INFO] [stdout] 161 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 161 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:175:24 [INFO] [stdout] | [INFO] [stdout] 175 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 175 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:198:11 [INFO] [stdout] | [INFO] [stdout] 198 | ($arg:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 198 | ($arg:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:206:11 [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr, $($msg:expr),+ $(,)? ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr_2021, $($msg:expr),+ $(,)? ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:206:24 [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr, $($msg:expr),+ $(,)? ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr, $($msg:expr_2021),+ $(,)? ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/adc.rs:419:27 [INFO] [stdout] | [INFO] [stdout] 419 | ($pin:ident, $channel:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 419 | ($pin:ident, $channel:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::arch::asm` [INFO] [stdout] --> src/clocks.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use core::arch::asm; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RW` and `Reg` [INFO] [stdout] --> src/clocks.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::pac::common::{Reg, RW}; [INFO] [stdout] | ^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/clocks.rs:775:28 [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr, $gpin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr_2021, $gpin_num:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/clocks.rs:775:44 [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr, $gpin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr, $gpin_num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/clocks.rs:825:30 [INFO] [stdout] | [INFO] [stdout] 825 | ($name:ident, $gpout_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 825 | ($name:ident, $gpout_num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/dma.rs:272:24 [INFO] [stdout] | [INFO] [stdout] 272 | ($name:ident, $num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 272 | ($name:ident, $num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/float/mod.rs:114:35 [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr, $significand_bits:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr_2021, $significand_bits:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/float/mod.rs:114:59 [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr, $significand_bits:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr, $significand_bits:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/gpio.rs:911:25 [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr, $pin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr_2021, $pin_num:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/gpio.rs:911:40 [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr, $pin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr, $pin_num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/pwm.rs:347:24 [INFO] [stdout] | [INFO] [stdout] 347 | ($name:ident, $num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 347 | ($name:ident, $num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/spi.rs:460:40 [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/spi.rs:460:55 [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/uart/mod.rs:1259:40 [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/uart/mod.rs:1259:55 [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/pio/mod.rs:1192:24 [INFO] [stdout] | [INFO] [stdout] 1192 | ($name:ident, $pio:expr, $pac:ident, $funcsel:ident, $irq:ident) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1192 | ($name:ident, $pio:expr_2021, $pac:ident, $funcsel:ident, $irq:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/lib.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _____help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 277 | | static mut _stack_end: usize; [INFO] [stdout] 278 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/dma.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | interrupt::DMA_IRQ_0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/dma.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:468:28 [INFO] [stdout] | [INFO] [stdout] 468 | let boot2_fn_ptr = (boot2 as *const u32 as *const u8).offset(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:467:5 [INFO] [stdout] | [INFO] [stdout] 467 | unsafe fn flash_function_pointers_with_boot2(erase: bool, write: bool, boot2: &[u32; 64]) -> FlashFunctionPointers { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::intrinsics::transmute` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:469:54 [INFO] [stdout] | [INFO] [stdout] 469 | let boot2_fn: unsafe extern "C" fn() -> () = core::mem::transmute(boot2_fn_ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:508:13 [INFO] [stdout] | [INFO] [stdout] 508 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | pub unsafe fn flash_range_erase(addr: u32, len: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:509:13 [INFO] [stdout] | [INFO] [stdout] 509 | flash_function_pointers_with_boot2(true, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:516:9 [INFO] [stdout] | [INFO] [stdout] 516 | write_flash_inner(addr, len, None, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:538:13 [INFO] [stdout] | [INFO] [stdout] 538 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:535:5 [INFO] [stdout] | [INFO] [stdout] 535 | pub unsafe fn flash_range_erase_and_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:539:13 [INFO] [stdout] | [INFO] [stdout] 539 | flash_function_pointers_with_boot2(true, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:546:9 [INFO] [stdout] | [INFO] [stdout] 546 | / write_flash_inner( [INFO] [stdout] 547 | | addr, [INFO] [stdout] 548 | | data.len() as u32, [INFO] [stdout] 549 | | Some(data), [INFO] [stdout] 550 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 551 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:570:5 [INFO] [stdout] | [INFO] [stdout] 570 | pub unsafe fn flash_range_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:574:13 [INFO] [stdout] | [INFO] [stdout] 574 | flash_function_pointers_with_boot2(false, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:581:9 [INFO] [stdout] | [INFO] [stdout] 581 | / write_flash_inner( [INFO] [stdout] 582 | | addr, [INFO] [stdout] 583 | | data.len() as u32, [INFO] [stdout] 584 | | Some(data), [INFO] [stdout] 585 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 586 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/flash.rs:600:33 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `len` [INFO] [stdout] --> src/flash.rs:600:44 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/flash.rs:600:54 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:600:75 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:698:13 [INFO] [stdout] | [INFO] [stdout] 698 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:695:5 [INFO] [stdout] | [INFO] [stdout] 695 | pub unsafe fn flash_unique_id(out: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:699:13 [INFO] [stdout] | [INFO] [stdout] 699 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:705:9 [INFO] [stdout] | [INFO] [stdout] 705 | read_flash(&cmd[..], 4, out, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:726:13 [INFO] [stdout] | [INFO] [stdout] 726 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:723:5 [INFO] [stdout] | [INFO] [stdout] 723 | pub unsafe fn flash_jedec_id() -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:727:13 [INFO] [stdout] | [INFO] [stdout] 727 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:734:9 [INFO] [stdout] | [INFO] [stdout] 734 | read_flash(&cmd[..], 0, &mut id[1..4], &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:739:9 [INFO] [stdout] | [INFO] [stdout] 739 | / read_flash_inner( [INFO] [stdout] 740 | | FlashCommand { [INFO] [stdout] 741 | | cmd_addr: cmd_addr.as_ptr(), [INFO] [stdout] 742 | | cmd_addr_len: cmd_addr.len() as u32, [INFO] [stdout] ... | [INFO] [stdout] 747 | | ptrs, [INFO] [stdout] 748 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | unsafe fn read_flash(cmd_addr: &[u8], dummy_len: u32, out: &mut [u8], ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/flash.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:761:51 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/gpio.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | interrupt::IO_IRQ_BANK0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/gpio.rs:199:1 [INFO] [stdout] | [INFO] [stdout] 199 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cortex_m::interrupt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/multicore.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | cortex_m::interrupt::enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/multicore.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | unsafe fn SIO_IRQ_PROC1() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | let ptr: u16 = *rom_address; [INFO] [stdout] | ^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | unsafe fn rom_hword_as_ptr(rom_address: *const u16) -> *const u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | memset(dest, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:335:9 [INFO] [stdout] | [INFO] [stdout] 335 | memset4(dest as *mut u32, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | memset(dest, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | memset4(dest as *mut u32, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | memcpy(dest, src, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | memcpy44(dest as *mut u32, src as *const u32, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:359:11 [INFO] [stdout] | [INFO] [stdout] 359 | while *end != 0 { [INFO] [stdout] | ^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:357:1 [INFO] [stdout] | [INFO] [stdout] 357 | unsafe fn convert_str(s: *const u8) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:360:15 [INFO] [stdout] | [INFO] [stdout] 360 | end = end.add(1); [INFO] [stdout] | ^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:13 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset_from` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:44 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::str::from_utf8_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | core::str::from_utf8_unchecked(s) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub unsafe fn set_x(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | pub unsafe fn get_x(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub unsafe fn set_y(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:40:1 [INFO] [stdout] | [INFO] [stdout] 40 | pub unsafe fn get_y(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | pub unsafe fn set_pindir(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub unsafe fn set_pin(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | pub unsafe fn set_out_pin(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:83:1 [INFO] [stdout] | [INFO] [stdout] 83 | pub unsafe fn set_out_pindir(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | sm.exec_instr(jmp); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:94:1 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe fn exec_jmp(sm: &mut StateMachine, to_addr: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:279:5 [INFO] [stdout] | [INFO] [stdout] 279 | unsafe { install_stack_guard(core::ptr::addr_of_mut!(_stack_end)) } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/i2c.rs:230:20 [INFO] [stdout] | [INFO] [stdout] 230 | if let Some(byte) = bytes.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/i2c.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 230 ~ match bytes.next() { Some(byte) => { [INFO] [stdout] 231 | let last = bytes.peek().is_none(); [INFO] [stdout] ... [INFO] [stdout] 237 | }); [INFO] [stdout] 238 ~ } _ => { [INFO] [stdout] 239 | break 'xmit Ok(()); [INFO] [stdout] 240 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:218:39 [INFO] [stdout] | [INFO] [stdout] 218 | fn read<'a>(buf: &'a mut [u8]) -> impl Future> + 'a [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:184:6 [INFO] [stdout] | [INFO] [stdout] 184 | impl<'d, T: Instance> BufferedUartRx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 218 | fn read<'a>(buf: &'a mut [u8]) -> impl Future> + 'a + use<'a, T> [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:292:26 [INFO] [stdout] | [INFO] [stdout] 292 | fn fill_buf<'a>() -> impl Future> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:184:6 [INFO] [stdout] | [INFO] [stdout] 184 | impl<'d, T: Instance> BufferedUartRx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 292 | fn fill_buf<'a>() -> impl Future> + use<'a, T> [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future> + '_` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:372:29 [INFO] [stdout] | [INFO] [stdout] 372 | fn write(buf: &[u8]) -> impl Future> + '_ { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:338:6 [INFO] [stdout] | [INFO] [stdout] 338 | impl<'d, T: Instance> BufferedUartTx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 372 | fn write(buf: &[u8]) -> impl Future> + '_ + use<'_, T> { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:399:19 [INFO] [stdout] | [INFO] [stdout] 399 | fn flush() -> impl Future> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:338:6 [INFO] [stdout] | [INFO] [stdout] 338 | impl<'d, T: Instance> BufferedUartTx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 399 | fn flush() -> impl Future> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 95 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `embassy_rp` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/adc.rs [INFO] [stderr] * src/clocks.rs [INFO] [stderr] * src/dma.rs [INFO] [stderr] * src/flash.rs [INFO] [stderr] * src/float/mod.rs [INFO] [stderr] * src/fmt.rs [INFO] [stderr] * src/gpio.rs [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/multicore.rs [INFO] [stderr] * src/pio/mod.rs [INFO] [stderr] * src/pwm.rs [INFO] [stderr] * src/rom_data.rs [INFO] [stderr] * src/spi.rs [INFO] [stderr] * src/uart/mod.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:119:21 [INFO] [stderr] | [INFO] [stderr] 119 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:133:21 [INFO] [stderr] | [INFO] [stderr] 133 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:147:21 [INFO] [stderr] | [INFO] [stderr] 147 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:161:21 [INFO] [stderr] | [INFO] [stderr] 161 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:175:21 [INFO] [stderr] | [INFO] [stderr] 175 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:198:6 [INFO] [stderr] | [INFO] [stderr] 198 | ($arg:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:206:6 [INFO] [stderr] | [INFO] [stderr] 206 | ($arg:expr_2021, $($msg:expr_2021),+ $(,)? ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/fmt.rs:206:24 [INFO] [stderr] | [INFO] [stderr] 206 | ($arg:expr_2021, $($msg:expr_2021),+ $(,)? ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/adc.rs:419:18 [INFO] [stderr] | [INFO] [stderr] 419 | ($pin:ident, $channel:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/clocks.rs:773:19 [INFO] [stderr] | [INFO] [stderr] 773 | ($name:ident, $pin_num:expr_2021, $gpin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/clocks.rs:773:39 [INFO] [stderr] | [INFO] [stderr] 773 | ($name:ident, $pin_num:expr_2021, $gpin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/clocks.rs:823:19 [INFO] [stderr] | [INFO] [stderr] 823 | ($name:ident, $gpout_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/dma.rs:272:19 [INFO] [stderr] | [INFO] [stderr] 272 | ($name:ident, $num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/float/mod.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | ($ty:ident, $ity:ident, $bits:expr_2021, $significand_bits:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/float/mod.rs:114:46 [INFO] [stderr] | [INFO] [stderr] 114 | ($ty:ident, $ity:ident, $bits:expr_2021, $significand_bits:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/gpio.rs:911:19 [INFO] [stderr] | [INFO] [stderr] 911 | ($name:ident, $bank:expr_2021, $pin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/gpio.rs:911:36 [INFO] [stderr] | [INFO] [stderr] 911 | ($name:ident, $bank:expr_2021, $pin_num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/pwm.rs:347:19 [INFO] [stderr] | [INFO] [stderr] 347 | ($name:ident, $num:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/spi.rs:460:31 [INFO] [stderr] | [INFO] [stderr] 460 | ($type:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/spi.rs:460:51 [INFO] [stderr] | [INFO] [stderr] 460 | ($type:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/uart/mod.rs:1259:31 [INFO] [stderr] | [INFO] [stderr] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/uart/mod.rs:1259:51 [INFO] [stderr] | [INFO] [stderr] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/pio/mod.rs:1192:19 [INFO] [stderr] | [INFO] [stderr] 1192 | ($name:ident, $pio:expr_2021, $pac:ident, $funcsel:ident, $irq:ident) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: custom attribute panicked [INFO] [stderr] --> src/multicore.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | #[interrupt] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: `#[interrupt]` must be applied to a function: Error("expected path") [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/flash.rs:600:33 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `len` [INFO] [stderr] --> src/flash.rs:600:44 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_len` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/flash.rs:600:54 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ptrs` [INFO] [stderr] --> src/flash.rs:600:75 [INFO] [stderr] | [INFO] [stderr] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cmd` [INFO] [stderr] --> src/flash.rs:761:32 [INFO] [stderr] | [INFO] [stderr] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ptrs` [INFO] [stderr] --> src/flash.rs:761:51 [INFO] [stderr] | [INFO] [stderr] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 216 | / rom_functions! { [INFO] [stderr] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stderr] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stderr] ... | [INFO] [stderr] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stderr] 301 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 446 | / make_functions! { [INFO] [stderr] 447 | | /// Calculates `a + b` [INFO] [stderr] 448 | | 0x00 fadd(a: f32, b: f32) -> f32; [INFO] [stderr] 449 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 514 | | 0x50 fln(v: f32) -> f32; [INFO] [stderr] 515 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 552 | / make_functions_v2! { [INFO] [stderr] 553 | | /// Compares two floating point numbers, returning: [INFO] [stderr] 554 | | /// • 0 if a == b [INFO] [stderr] 555 | | /// • -1 if a < b [INFO] [stderr] ... | [INFO] [stderr] 600 | | 0x7c float_to_double(v: f32) -> f64; [INFO] [stderr] 601 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_functions_v2` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/rom_data.rs:174:85 [INFO] [stderr] | [INFO] [stderr] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 635 | / make_double_funcs! { [INFO] [stderr] 636 | | /// Calculates `a + b` [INFO] [stderr] 637 | | 0x00 dadd(a: f64, b: f64) -> f64; [INFO] [stderr] 638 | | /// Calculates `a - b` [INFO] [stderr] ... | [INFO] [stderr] 754 | | 0x7c double_to_float(v: f64) -> f32; [INFO] [stderr] 755 | | } [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `make_double_funcs` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/lib.rs:279:5 [INFO] [stderr] | [INFO] [stderr] 279 | unsafe { install_stack_guard(core::ptr::addr_of_mut!(_stack_end)) } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] error: aborting due to 24 previous errors; 70 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:599:7 [INFO] [stdout] | [INFO] [stdout] 599 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] = note: `--force-warn unsafe-attr-outside-unsafe` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 599 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:760:7 [INFO] [stdout] | [INFO] [stdout] 760 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 760 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/multicore.rs:89:3 [INFO] [stdout] | [INFO] [stdout] 89 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 89 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/lib.rs:224:11 [INFO] [stdout] | [INFO] [stdout] 224 | #[link_section = ".boot2"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] ... [INFO] [stdout] 231 | / select_bootloader! { [INFO] [stdout] 232 | | "boot2-at25sf128a" => BOOT_LOADER_AT25SF128A, [INFO] [stdout] 233 | | "boot2-gd25q64cs" => BOOT_LOADER_GD25Q64CS, [INFO] [stdout] 234 | | "boot2-generic-03h" => BOOT_LOADER_GENERIC_03H, [INFO] [stdout] ... | [INFO] [stdout] 239 | | default => BOOT_LOADER_W25Q080 [INFO] [stdout] 240 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123757 [INFO] [stdout] = note: this warning originates in the macro `select_bootloader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 224 | #[unsafe(link_section = ".boot2")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:119:24 [INFO] [stdout] | [INFO] [stdout] 119 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 119 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:133:24 [INFO] [stdout] | [INFO] [stdout] 133 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 133 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:147:24 [INFO] [stdout] | [INFO] [stdout] 147 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 147 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:161:24 [INFO] [stdout] | [INFO] [stdout] 161 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 161 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:175:24 [INFO] [stdout] | [INFO] [stdout] 175 | ($s:literal $(, $x:expr)* $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 175 | ($s:literal $(, $x:expr_2021)* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:198:11 [INFO] [stdout] | [INFO] [stdout] 198 | ($arg:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 198 | ($arg:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:206:11 [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr, $($msg:expr),+ $(,)? ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr_2021, $($msg:expr),+ $(,)? ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/fmt.rs:206:24 [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr, $($msg:expr),+ $(,)? ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 206 | ($arg:expr, $($msg:expr_2021),+ $(,)? ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/adc.rs:419:27 [INFO] [stdout] | [INFO] [stdout] 419 | ($pin:ident, $channel:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 419 | ($pin:ident, $channel:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::arch::asm` [INFO] [stdout] --> src/clocks.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use core::arch::asm; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RW` and `Reg` [INFO] [stdout] --> src/clocks.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::pac::common::{Reg, RW}; [INFO] [stdout] | ^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/clocks.rs:775:28 [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr, $gpin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr_2021, $gpin_num:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/clocks.rs:775:44 [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr, $gpin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 775 | ($name:ident, $pin_num:expr, $gpin_num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/clocks.rs:825:30 [INFO] [stdout] | [INFO] [stdout] 825 | ($name:ident, $gpout_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 825 | ($name:ident, $gpout_num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/dma.rs:272:24 [INFO] [stdout] | [INFO] [stdout] 272 | ($name:ident, $num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 272 | ($name:ident, $num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/float/mod.rs:114:35 [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr, $significand_bits:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr_2021, $significand_bits:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/float/mod.rs:114:59 [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr, $significand_bits:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 114 | ($ty:ident, $ity:ident, $bits:expr, $significand_bits:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/gpio.rs:911:25 [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr, $pin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr_2021, $pin_num:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/gpio.rs:911:40 [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr, $pin_num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 911 | ($name:ident, $bank:expr, $pin_num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/pwm.rs:347:24 [INFO] [stdout] | [INFO] [stdout] 347 | ($name:ident, $num:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 347 | ($name:ident, $num:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/spi.rs:460:40 [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/spi.rs:460:55 [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 460 | ($type:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/uart/mod.rs:1259:40 [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr_2021, $rx_dreq:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/uart/mod.rs:1259:55 [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1259 | ($inst:ident, $irq:ident, $tx_dreq:expr, $rx_dreq:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/pio/mod.rs:1192:24 [INFO] [stdout] | [INFO] [stdout] 1192 | ($name:ident, $pio:expr, $pac:ident, $funcsel:ident, $irq:ident) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1192 | ($name:ident, $pio:expr_2021, $pac:ident, $funcsel:ident, $irq:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/lib.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _____help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 277 | | static mut _stack_end: usize; [INFO] [stdout] 278 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/dma.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | interrupt::DMA_IRQ_0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/dma.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:468:28 [INFO] [stdout] | [INFO] [stdout] 468 | let boot2_fn_ptr = (boot2 as *const u32 as *const u8).offset(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:467:5 [INFO] [stdout] | [INFO] [stdout] 467 | unsafe fn flash_function_pointers_with_boot2(erase: bool, write: bool, boot2: &[u32; 64]) -> FlashFunctionPointers { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::intrinsics::transmute` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:469:54 [INFO] [stdout] | [INFO] [stdout] 469 | let boot2_fn: unsafe extern "C" fn() -> () = core::mem::transmute(boot2_fn_ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:508:13 [INFO] [stdout] | [INFO] [stdout] 508 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | pub unsafe fn flash_range_erase(addr: u32, len: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:509:13 [INFO] [stdout] | [INFO] [stdout] 509 | flash_function_pointers_with_boot2(true, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:516:9 [INFO] [stdout] | [INFO] [stdout] 516 | write_flash_inner(addr, len, None, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:538:13 [INFO] [stdout] | [INFO] [stdout] 538 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:535:5 [INFO] [stdout] | [INFO] [stdout] 535 | pub unsafe fn flash_range_erase_and_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:539:13 [INFO] [stdout] | [INFO] [stdout] 539 | flash_function_pointers_with_boot2(true, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:546:9 [INFO] [stdout] | [INFO] [stdout] 546 | / write_flash_inner( [INFO] [stdout] 547 | | addr, [INFO] [stdout] 548 | | data.len() as u32, [INFO] [stdout] 549 | | Some(data), [INFO] [stdout] 550 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 551 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:570:5 [INFO] [stdout] | [INFO] [stdout] 570 | pub unsafe fn flash_range_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:574:13 [INFO] [stdout] | [INFO] [stdout] 574 | flash_function_pointers_with_boot2(false, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:581:9 [INFO] [stdout] | [INFO] [stdout] 581 | / write_flash_inner( [INFO] [stdout] 582 | | addr, [INFO] [stdout] 583 | | data.len() as u32, [INFO] [stdout] 584 | | Some(data), [INFO] [stdout] 585 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 586 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/flash.rs:600:33 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `len` [INFO] [stdout] --> src/flash.rs:600:44 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/flash.rs:600:54 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:600:75 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:698:13 [INFO] [stdout] | [INFO] [stdout] 698 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:695:5 [INFO] [stdout] | [INFO] [stdout] 695 | pub unsafe fn flash_unique_id(out: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:699:13 [INFO] [stdout] | [INFO] [stdout] 699 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:705:9 [INFO] [stdout] | [INFO] [stdout] 705 | read_flash(&cmd[..], 4, out, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:726:13 [INFO] [stdout] | [INFO] [stdout] 726 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:723:5 [INFO] [stdout] | [INFO] [stdout] 723 | pub unsafe fn flash_jedec_id() -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:727:13 [INFO] [stdout] | [INFO] [stdout] 727 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:734:9 [INFO] [stdout] | [INFO] [stdout] 734 | read_flash(&cmd[..], 0, &mut id[1..4], &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:739:9 [INFO] [stdout] | [INFO] [stdout] 739 | / read_flash_inner( [INFO] [stdout] 740 | | FlashCommand { [INFO] [stdout] 741 | | cmd_addr: cmd_addr.as_ptr(), [INFO] [stdout] 742 | | cmd_addr_len: cmd_addr.len() as u32, [INFO] [stdout] ... | [INFO] [stdout] 747 | | ptrs, [INFO] [stdout] 748 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | unsafe fn read_flash(cmd_addr: &[u8], dummy_len: u32, out: &mut [u8], ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/flash.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:761:51 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/gpio.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | interrupt::IO_IRQ_BANK0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/gpio.rs:199:1 [INFO] [stdout] | [INFO] [stdout] 199 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cortex_m::interrupt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/multicore.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | cortex_m::interrupt::enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/multicore.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | unsafe fn SIO_IRQ_PROC1() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | let ptr: u16 = *rom_address; [INFO] [stdout] | ^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | unsafe fn rom_hword_as_ptr(rom_address: *const u16) -> *const u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | memset(dest, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:335:9 [INFO] [stdout] | [INFO] [stdout] 335 | memset4(dest as *mut u32, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | memset(dest, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | memset4(dest as *mut u32, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | memcpy(dest, src, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | memcpy44(dest as *mut u32, src as *const u32, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:359:11 [INFO] [stdout] | [INFO] [stdout] 359 | while *end != 0 { [INFO] [stdout] | ^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:357:1 [INFO] [stdout] | [INFO] [stdout] 357 | unsafe fn convert_str(s: *const u8) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:360:15 [INFO] [stdout] | [INFO] [stdout] 360 | end = end.add(1); [INFO] [stdout] | ^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:13 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset_from` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:44 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::str::from_utf8_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | core::str::from_utf8_unchecked(s) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub unsafe fn set_x(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | pub unsafe fn get_x(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub unsafe fn set_y(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:40:1 [INFO] [stdout] | [INFO] [stdout] 40 | pub unsafe fn get_y(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | pub unsafe fn set_pindir(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub unsafe fn set_pin(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | pub unsafe fn set_out_pin(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:83:1 [INFO] [stdout] | [INFO] [stdout] 83 | pub unsafe fn set_out_pindir(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | sm.exec_instr(jmp); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:94:1 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe fn exec_jmp(sm: &mut StateMachine, to_addr: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:279:5 [INFO] [stdout] | [INFO] [stdout] 279 | unsafe { install_stack_guard(core::ptr::addr_of_mut!(_stack_end)) } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/i2c.rs:230:20 [INFO] [stdout] | [INFO] [stdout] 230 | if let Some(byte) = bytes.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/i2c.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 230 ~ match bytes.next() { Some(byte) => { [INFO] [stdout] 231 | let last = bytes.peek().is_none(); [INFO] [stdout] ... [INFO] [stdout] 237 | }); [INFO] [stdout] 238 ~ } _ => { [INFO] [stdout] 239 | break 'xmit Ok(()); [INFO] [stdout] 240 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:218:39 [INFO] [stdout] | [INFO] [stdout] 218 | fn read<'a>(buf: &'a mut [u8]) -> impl Future> + 'a [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:184:6 [INFO] [stdout] | [INFO] [stdout] 184 | impl<'d, T: Instance> BufferedUartRx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 218 | fn read<'a>(buf: &'a mut [u8]) -> impl Future> + 'a + use<'a, T> [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:292:26 [INFO] [stdout] | [INFO] [stdout] 292 | fn fill_buf<'a>() -> impl Future> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:184:6 [INFO] [stdout] | [INFO] [stdout] 184 | impl<'d, T: Instance> BufferedUartRx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 292 | fn fill_buf<'a>() -> impl Future> + use<'a, T> [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future> + '_` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:372:29 [INFO] [stdout] | [INFO] [stdout] 372 | fn write(buf: &[u8]) -> impl Future> + '_ { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:338:6 [INFO] [stdout] | [INFO] [stdout] 338 | impl<'d, T: Instance> BufferedUartTx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 372 | fn write(buf: &[u8]) -> impl Future> + '_ + use<'_, T> { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/uart/buffered.rs:399:19 [INFO] [stdout] | [INFO] [stdout] 399 | fn flush() -> impl Future> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/uart/buffered.rs:338:6 [INFO] [stdout] | [INFO] [stdout] 338 | impl<'d, T: Instance> BufferedUartTx<'d, T> { [INFO] [stdout] | ^^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 399 | fn flush() -> impl Future> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 95 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.75s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Compiling embassy-rp v0.2.0 (/tmp/fixit) [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:599:7 [INFO] [stdout] | [INFO] [stdout] 599 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 599 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:760:7 [INFO] [stdout] | [INFO] [stdout] 760 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 760 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:599:7 [INFO] [stdout] | [INFO] [stdout] 599 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 599 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/flash.rs:760:7 [INFO] [stdout] | [INFO] [stdout] 760 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 760 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/multicore.rs:89:3 [INFO] [stdout] | [INFO] [stdout] 89 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 89 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/multicore.rs:89:3 [INFO] [stdout] | [INFO] [stdout] 89 | #[link_section = ".data.ram_func"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 89 | #[unsafe(link_section = ".data.ram_func")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/lib.rs:224:11 [INFO] [stdout] | [INFO] [stdout] 224 | #[link_section = ".boot2"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] ... [INFO] [stdout] 231 | / select_bootloader! { [INFO] [stdout] 232 | | "boot2-at25sf128a" => BOOT_LOADER_AT25SF128A, [INFO] [stdout] 233 | | "boot2-gd25q64cs" => BOOT_LOADER_GD25Q64CS, [INFO] [stdout] 234 | | "boot2-generic-03h" => BOOT_LOADER_GENERIC_03H, [INFO] [stdout] ... | [INFO] [stdout] 239 | | default => BOOT_LOADER_W25Q080 [INFO] [stdout] 240 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `select_bootloader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 224 | #[unsafe(link_section = ".boot2")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/lib.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | / extern "C" { [INFO] [stdout] 277 | | static mut _stack_end: usize; [INFO] [stdout] 278 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/lib.rs:224:11 [INFO] [stdout] | [INFO] [stdout] 224 | #[link_section = ".boot2"] [INFO] [stdout] | ^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] ... [INFO] [stdout] 231 | / select_bootloader! { [INFO] [stdout] 232 | | "boot2-at25sf128a" => BOOT_LOADER_AT25SF128A, [INFO] [stdout] 233 | | "boot2-gd25q64cs" => BOOT_LOADER_GD25Q64CS, [INFO] [stdout] 234 | | "boot2-generic-03h" => BOOT_LOADER_GENERIC_03H, [INFO] [stdout] ... | [INFO] [stdout] 239 | | default => BOOT_LOADER_W25Q080 [INFO] [stdout] 240 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `select_bootloader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 224 | #[unsafe(link_section = ".boot2")] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/lib.rs:276:5 [INFO] [stdout] | [INFO] [stdout] 276 | / extern "C" { [INFO] [stdout] 277 | | static mut _stack_end: usize; [INFO] [stdout] 278 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::arch::asm` [INFO] [stdout] --> src/clocks.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use core::arch::asm; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RW` and `Reg` [INFO] [stdout] --> src/clocks.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::pac::common::{Reg, RW}; [INFO] [stdout] | ^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::arch::asm` [INFO] [stdout] --> src/clocks.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use core::arch::asm; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RW` and `Reg` [INFO] [stdout] --> src/clocks.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::pac::common::{Reg, RW}; [INFO] [stdout] | ^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/dma.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | interrupt::DMA_IRQ_0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/dma.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:468:28 [INFO] [stdout] | [INFO] [stdout] 468 | let boot2_fn_ptr = (boot2 as *const u32 as *const u8).offset(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:467:5 [INFO] [stdout] | [INFO] [stdout] 467 | unsafe fn flash_function_pointers_with_boot2(erase: bool, write: bool, boot2: &[u32; 64]) -> FlashFunctionPointers { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::intrinsics::transmute` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:469:54 [INFO] [stdout] | [INFO] [stdout] 469 | let boot2_fn: unsafe extern "C" fn() -> () = core::mem::transmute(boot2_fn_ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:508:13 [INFO] [stdout] | [INFO] [stdout] 508 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | pub unsafe fn flash_range_erase(addr: u32, len: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:509:13 [INFO] [stdout] | [INFO] [stdout] 509 | flash_function_pointers_with_boot2(true, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:516:9 [INFO] [stdout] | [INFO] [stdout] 516 | write_flash_inner(addr, len, None, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:538:13 [INFO] [stdout] | [INFO] [stdout] 538 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:535:5 [INFO] [stdout] | [INFO] [stdout] 535 | pub unsafe fn flash_range_erase_and_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:539:13 [INFO] [stdout] | [INFO] [stdout] 539 | flash_function_pointers_with_boot2(true, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:546:9 [INFO] [stdout] | [INFO] [stdout] 546 | / write_flash_inner( [INFO] [stdout] 547 | | addr, [INFO] [stdout] 548 | | data.len() as u32, [INFO] [stdout] 549 | | Some(data), [INFO] [stdout] 550 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 551 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:570:5 [INFO] [stdout] | [INFO] [stdout] 570 | pub unsafe fn flash_range_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:574:13 [INFO] [stdout] | [INFO] [stdout] 574 | flash_function_pointers_with_boot2(false, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:581:9 [INFO] [stdout] | [INFO] [stdout] 581 | / write_flash_inner( [INFO] [stdout] 582 | | addr, [INFO] [stdout] 583 | | data.len() as u32, [INFO] [stdout] 584 | | Some(data), [INFO] [stdout] 585 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 586 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/flash.rs:600:33 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `len` [INFO] [stdout] --> src/flash.rs:600:44 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/flash.rs:600:54 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:600:75 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:698:13 [INFO] [stdout] | [INFO] [stdout] 698 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:695:5 [INFO] [stdout] | [INFO] [stdout] 695 | pub unsafe fn flash_unique_id(out: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:699:13 [INFO] [stdout] | [INFO] [stdout] 699 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:705:9 [INFO] [stdout] | [INFO] [stdout] 705 | read_flash(&cmd[..], 4, out, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:726:13 [INFO] [stdout] | [INFO] [stdout] 726 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:723:5 [INFO] [stdout] | [INFO] [stdout] 723 | pub unsafe fn flash_jedec_id() -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:727:13 [INFO] [stdout] | [INFO] [stdout] 727 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:734:9 [INFO] [stdout] | [INFO] [stdout] 734 | read_flash(&cmd[..], 0, &mut id[1..4], &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:739:9 [INFO] [stdout] | [INFO] [stdout] 739 | / read_flash_inner( [INFO] [stdout] 740 | | FlashCommand { [INFO] [stdout] 741 | | cmd_addr: cmd_addr.as_ptr(), [INFO] [stdout] 742 | | cmd_addr_len: cmd_addr.len() as u32, [INFO] [stdout] ... | [INFO] [stdout] 747 | | ptrs, [INFO] [stdout] 748 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | unsafe fn read_flash(cmd_addr: &[u8], dummy_len: u32, out: &mut [u8], ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/flash.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:761:51 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/dma.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | interrupt::DMA_IRQ_0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/dma.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/gpio.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | interrupt::IO_IRQ_BANK0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/gpio.rs:199:1 [INFO] [stdout] | [INFO] [stdout] 199 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:468:28 [INFO] [stdout] | [INFO] [stdout] 468 | let boot2_fn_ptr = (boot2 as *const u32 as *const u8).offset(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:467:5 [INFO] [stdout] | [INFO] [stdout] 467 | unsafe fn flash_function_pointers_with_boot2(erase: bool, write: bool, boot2: &[u32; 64]) -> FlashFunctionPointers { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::intrinsics::transmute` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:469:54 [INFO] [stdout] | [INFO] [stdout] 469 | let boot2_fn: unsafe extern "C" fn() -> () = core::mem::transmute(boot2_fn_ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:508:13 [INFO] [stdout] | [INFO] [stdout] 508 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | pub unsafe fn flash_range_erase(addr: u32, len: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:509:13 [INFO] [stdout] | [INFO] [stdout] 509 | flash_function_pointers_with_boot2(true, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:516:9 [INFO] [stdout] | [INFO] [stdout] 516 | write_flash_inner(addr, len, None, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:538:13 [INFO] [stdout] | [INFO] [stdout] 538 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:535:5 [INFO] [stdout] | [INFO] [stdout] 535 | pub unsafe fn flash_range_erase_and_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:539:13 [INFO] [stdout] | [INFO] [stdout] 539 | flash_function_pointers_with_boot2(true, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:546:9 [INFO] [stdout] | [INFO] [stdout] 546 | / write_flash_inner( [INFO] [stdout] 547 | | addr, [INFO] [stdout] 548 | | data.len() as u32, [INFO] [stdout] 549 | | Some(data), [INFO] [stdout] 550 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 551 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:570:5 [INFO] [stdout] | [INFO] [stdout] 570 | pub unsafe fn flash_range_program(addr: u32, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:574:13 [INFO] [stdout] | [INFO] [stdout] 574 | flash_function_pointers_with_boot2(false, true, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::write_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:581:9 [INFO] [stdout] | [INFO] [stdout] 581 | / write_flash_inner( [INFO] [stdout] 582 | | addr, [INFO] [stdout] 583 | | data.len() as u32, [INFO] [stdout] 584 | | Some(data), [INFO] [stdout] 585 | | &ptrs as *const FlashFunctionPointers, [INFO] [stdout] 586 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/flash.rs:600:33 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `len` [INFO] [stdout] --> src/flash.rs:600:44 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/flash.rs:600:54 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:600:75 [INFO] [stdout] | [INFO] [stdout] 600 | unsafe fn write_flash_inner(addr: u32, len: u32, data: Option<&[u8]>, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:698:13 [INFO] [stdout] | [INFO] [stdout] 698 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:695:5 [INFO] [stdout] | [INFO] [stdout] 695 | pub unsafe fn flash_unique_id(out: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:699:13 [INFO] [stdout] | [INFO] [stdout] 699 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:705:9 [INFO] [stdout] | [INFO] [stdout] 705 | read_flash(&cmd[..], 4, out, &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:726:13 [INFO] [stdout] | [INFO] [stdout] 726 | rom_data::memcpy44(&mut boot2 as *mut _, FLASH_BASE, 256); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:723:5 [INFO] [stdout] | [INFO] [stdout] 723 | pub unsafe fn flash_jedec_id() -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::flash_function_pointers_with_boot2` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:727:13 [INFO] [stdout] | [INFO] [stdout] 727 | flash_function_pointers_with_boot2(false, false, &boot2) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:734:9 [INFO] [stdout] | [INFO] [stdout] 734 | read_flash(&cmd[..], 0, &mut id[1..4], &ptrs as *const FlashFunctionPointers); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `flash::ram_helpers::read_flash_inner` is unsafe and requires unsafe block [INFO] [stdout] --> src/flash.rs:739:9 [INFO] [stdout] | [INFO] [stdout] 739 | / read_flash_inner( [INFO] [stdout] 740 | | FlashCommand { [INFO] [stdout] 741 | | cmd_addr: cmd_addr.as_ptr(), [INFO] [stdout] 742 | | cmd_addr_len: cmd_addr.len() as u32, [INFO] [stdout] ... | [INFO] [stdout] 747 | | ptrs, [INFO] [stdout] 748 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/flash.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | unsafe fn read_flash(cmd_addr: &[u8], dummy_len: u32, out: &mut [u8], ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/flash.rs:761:32 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/flash.rs:761:51 [INFO] [stdout] | [INFO] [stdout] 761 | unsafe fn read_flash_inner(cmd: FlashCommand, ptrs: *const FlashFunctionPointers) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `embassy_hal_internal::interrupt::InterruptExt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/gpio.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | interrupt::IO_IRQ_BANK0.enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/gpio.rs:199:1 [INFO] [stdout] | [INFO] [stdout] 199 | pub(crate) unsafe fn init() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cortex_m::interrupt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/multicore.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | cortex_m::interrupt::enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/multicore.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | unsafe fn SIO_IRQ_PROC1() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | let ptr: u16 = *rom_address; [INFO] [stdout] | ^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | unsafe fn rom_hword_as_ptr(rom_address: *const u16) -> *const u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | memset(dest, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:335:9 [INFO] [stdout] | [INFO] [stdout] 335 | memset4(dest as *mut u32, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cortex_m::interrupt::enable` is unsafe and requires unsafe block [INFO] [stdout] --> src/multicore.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | cortex_m::interrupt::enable(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/multicore.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | unsafe fn SIO_IRQ_PROC1() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | memset(dest, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | memset4(dest as *mut u32, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | memcpy(dest, src, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | memcpy44(dest as *mut u32, src as *const u32, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:359:11 [INFO] [stdout] | [INFO] [stdout] 359 | while *end != 0 { [INFO] [stdout] | ^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:357:1 [INFO] [stdout] | [INFO] [stdout] 357 | unsafe fn convert_str(s: *const u8) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:360:15 [INFO] [stdout] | [INFO] [stdout] 360 | end = end.add(1); [INFO] [stdout] | ^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:13 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset_from` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:44 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::str::from_utf8_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | core::str::from_utf8_unchecked(s) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | let ptr: u16 = *rom_address; [INFO] [stdout] | ^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | unsafe fn rom_hword_as_ptr(rom_address: *const u16) -> *const u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | $name::outer_call()($($argname),*) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | pub $( $maybe_unsafe )? extern "C" fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | / rom_functions! { [INFO] [stdout] 217 | | /// Return a count of the number of 1 bits in value. [INFO] [stdout] 218 | | b"P3" fn popcount32(value: u32) -> u32; [INFO] [stdout] ... | [INFO] [stdout] 300 | | b"WV" unsafe fn wait_for_vector() -> !; [INFO] [stdout] 301 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `declare_rom_function` which comes from the expansion of the macro `rom_functions` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | memset(dest, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:335:9 [INFO] [stdout] | [INFO] [stdout] 335 | memset4(dest as *mut u32, c as u8, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | memset(dest, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memset4` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | memset4(dest as *mut u32, 0, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | memcpy(dest, src, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `rom_data::memcpy44` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | memcpy44(dest as *mut u32, src as *const u32, n as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/intrinsics.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | unsafe fn $name( $($argname: $ty),* ) -> $ret { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/rom_data.rs:304:1 [INFO] [stdout] | [INFO] [stdout] 304 | / intrinsics! { [INFO] [stdout] 305 | | #[alias = __popcountdi2] [INFO] [stdout] 306 | | extern "C" fn __popcountsi2(x: u32) -> u32 { [INFO] [stdout] 307 | | popcount32(x) [INFO] [stdout] ... | [INFO] [stdout] 354 | | } [INFO] [stdout] 355 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `intrinsics` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:359:11 [INFO] [stdout] | [INFO] [stdout] 359 | while *end != 0 { [INFO] [stdout] | ^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/rom_data.rs:357:1 [INFO] [stdout] | [INFO] [stdout] 357 | unsafe fn convert_str(s: *const u8) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:360:15 [INFO] [stdout] | [INFO] [stdout] 360 | end = end.add(1); [INFO] [stdout] | ^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:13 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::ptr::const_ptr::::offset_from` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:362:44 [INFO] [stdout] | [INFO] [stdout] 362 | let s = core::slice::from_raw_parts(s, end.offset_from(s) as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::str::from_utf8_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/rom_data.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | core::str::from_utf8_unchecked(s) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub unsafe fn set_x(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | pub unsafe fn get_x(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub unsafe fn set_y(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:40:1 [INFO] [stdout] | [INFO] [stdout] 40 | pub unsafe fn get_y(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | pub unsafe fn set_pindir(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub unsafe fn set_pin(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | pub unsafe fn set_out_pin(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:83:1 [INFO] [stdout] | [INFO] [stdout] 83 | pub unsafe fn set_out_pindir(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | sm.exec_instr(jmp); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:94:1 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe fn exec_jmp(sm: &mut StateMachine, to_addr: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub unsafe fn set_x(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | pub unsafe fn get_x(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:279:5 [INFO] [stdout] | [INFO] [stdout] 279 | unsafe { install_stack_guard(core::ptr::addr_of_mut!(_stack_end)) } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub unsafe fn set_y(sm: &mut StateMachine, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | sm.exec_instr(IN); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:40:1 [INFO] [stdout] | [INFO] [stdout] 40 | pub unsafe fn get_y(sm: &mut StateMachine) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | pub unsafe fn set_pindir(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | sm.exec_instr(set); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub unsafe fn set_pin(sm: &mut StateMachine, data: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | pub unsafe fn set_out_pin(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | sm.exec_instr(OUT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:83:1 [INFO] [stdout] | [INFO] [stdout] 83 | pub unsafe fn set_out_pindir(sm: &mut StateMachine, data: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `pio::StateMachine::<'d, PIO, SM>::exec_instr` is unsafe and requires unsafe block [INFO] [stdout] --> src/pio/instr.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | sm.exec_instr(jmp); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/pio/instr.rs:94:1 [INFO] [stdout] | [INFO] [stdout] 94 | pub unsafe fn exec_jmp(sm: &mut StateMachine, to_addr: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 5 previous errors; 62 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] error: could not compile `embassy-rp` (lib) due to 6 previous errors; 62 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:279:5 [INFO] [stdout] | [INFO] [stdout] 279 | unsafe { install_stack_guard(core::ptr::addr_of_mut!(_stack_end)) } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 5 previous errors; 62 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] error: could not compile `embassy-rp` (lib test) due to 6 previous errors; 62 warnings emitted [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "806a3307957bab5a18131d510118a576b49bb69533f3a2df317d56cf161bf254", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "806a3307957bab5a18131d510118a576b49bb69533f3a2df317d56cf161bf254", kill_on_drop: false }` [INFO] [stdout] 806a3307957bab5a18131d510118a576b49bb69533f3a2df317d56cf161bf254