[INFO] fetching crate neuromorphic-drivers 0.14.0... [INFO] checking neuromorphic-drivers-0.14.0 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate neuromorphic-drivers 0.14.0 into /workspace/builds/worker-1-tc2/source [INFO] validating manifest of crates.io crate neuromorphic-drivers 0.14.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 neuromorphic-drivers 0.14.0 [INFO] finished tweaking crates.io crate neuromorphic-drivers 0.14.0 [INFO] tweaked toml for crates.io crate neuromorphic-drivers 0.14.0 written to /workspace/builds/worker-1-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 18 packages to latest compatible versions [INFO] [stderr] Adding libusb1-sys v0.6.5 (available: v0.7.0) [INFO] [stderr] Adding rusb v0.9.3 (available: v0.9.4) [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-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 6be1161af3eece329abf154d52701ce38169391eede01b0229935545dacca9ff [INFO] running `Command { std: "docker" "start" "-a" "6be1161af3eece329abf154d52701ce38169391eede01b0229935545dacca9ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6be1161af3eece329abf154d52701ce38169391eede01b0229935545dacca9ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6be1161af3eece329abf154d52701ce38169391eede01b0229935545dacca9ff", kill_on_drop: false }` [INFO] [stdout] 6be1161af3eece329abf154d52701ce38169391eede01b0229935545dacca9ff [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 8e2128bf6999c7848af93892817e0808e9eeee3c681d19551ebfba8d4edfd51e [INFO] running `Command { std: "docker" "start" "-a" "8e2128bf6999c7848af93892817e0808e9eeee3c681d19551ebfba8d4edfd51e", 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] Compiling rusb v0.9.3 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking neuromorphic-types v0.4.0 [INFO] [stderr] Compiling cc v1.1.21 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Compiling libusb1-sys v0.6.5 [INFO] [stderr] Checking serde v1.0.210 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking neuromorphic-drivers v0.14.0 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `neuromorphic_drivers` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/devices/prophesee_evk3_hd.rs [INFO] [stderr] * src/devices/prophesee_evk4.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/devices/prophesee_evk3_hd.rs:512:36 [INFO] [stderr] | [INFO] [stderr] 512 | ($name:ident, $register:ident, $configuration:expr_2021, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk3_hd.rs:512:101 [INFO] [stderr] | [INFO] [stderr] 512 | ($name:ident, $register:ident, $configuration:expr_2021, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk4.rs:1036:75 [INFO] [stderr] | [INFO] [stderr] 1036 | ($name:ident, $register:ident, $handle:ident, $previous_biases:ident, $biases: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: aborting due to 3 previous errors [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/usb.rs:295:3 [INFO] [stdout] | [INFO] [stdout] 295 | #[no_mangle] [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] 295 | #[unsafe(no_mangle)] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:512:51 [INFO] [stdout] | [INFO] [stdout] 512 | ($name:ident, $register:ident, $configuration:expr, $handle:ident, $previous_biases:ident, $biases: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] 512 | ($name:ident, $register:ident, $configuration:expr_2021, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk3_hd.rs:512:104 [INFO] [stdout] | [INFO] [stdout] 512 | ($name:ident, $register:ident, $configuration:expr, $handle:ident, $previous_biases:ident, $biases: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] 512 | ($name:ident, $register:ident, $configuration:expr, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk4.rs:1036:83 [INFO] [stdout] | [INFO] [stdout] 1036 | ($name:ident, $register:ident, $handle:ident, $previous_biases:ident, $biases: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] 1036 | ($name:ident, $register:ident, $handle:ident, $previous_biases:ident, $biases:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/usb.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | extern "system" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 102 | | pub fn libusb_dev_mem_alloc( [INFO] [stdout] 103 | | dev_handle: *mut libusb1_sys::libusb_device_handle, [INFO] [stdout] 104 | | length: libc::ssize_t, [INFO] [stdout] ... | [INFO] [stdout] 111 | | ) -> *mut libc::c_int; [INFO] [stdout] 112 | | } [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 `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/usb.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | self.0.as_mut() [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/usb.rs:235:5 [INFO] [stdout] | [INFO] [stdout] 235 | unsafe fn as_mut(&mut self) -> &mut libusb1_sys::libusb_transfer { [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: method `read` is never used [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:815:8 [INFO] [stdout] | [INFO] [stdout] 808 | trait Register { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 815 | fn read(&self, handle: &rusb::DeviceHandle) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LifoCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:974:13 [INFO] [stdout] | [INFO] [stdout] 974 | register! { LifoCtrl, 0x000C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LifoCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LifoStatus` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:975:13 [INFO] [stdout] | [INFO] [stdout] 975 | register! { LifoStatus, 0x0010, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LifoStatus` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Reserved0014` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:976:13 [INFO] [stdout] | [INFO] [stdout] 976 | register! { Reserved0014, 0x0014, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Reserved0014` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RefractoryCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:977:13 [INFO] [stdout] | [INFO] [stdout] 977 | register! { RefractoryCtrl, 0x0020, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RefractoryCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoiWinCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:978:13 [INFO] [stdout] | [INFO] [stdout] 978 | register! { RoiWinCtrl, 0x0034, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoiWinCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoiWinStartAddr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:979:13 [INFO] [stdout] | [INFO] [stdout] 979 | register! { RoiWinStartAddr, 0x0038, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoiWinStartAddr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoiWinEndAddr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:980:13 [INFO] [stdout] | [INFO] [stdout] 980 | register! { RoiWinEndAddr, 0x003C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoiWinEndAddr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DigPad2Ctrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:981:13 [INFO] [stdout] | [INFO] [stdout] 981 | register! { DigPad2Ctrl, 0x0044, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DigPad2Ctrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AdcControl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:982:13 [INFO] [stdout] | [INFO] [stdout] 982 | register! { AdcControl, 0x004C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AdcControl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AdcStatus` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:983:13 [INFO] [stdout] | [INFO] [stdout] 983 | register! { AdcStatus, 0x0050, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AdcStatus` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TempCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:985:13 [INFO] [stdout] | [INFO] [stdout] 985 | register! { TempCtrl, 0x005C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TempCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IphMirrCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:986:13 [INFO] [stdout] | [INFO] [stdout] 986 | register! { IphMirrCtrl, 0x0074, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IphMirrCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReqyQmonCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:987:13 [INFO] [stdout] | [INFO] [stdout] 987 | register! { ReqyQmonCtrl, 0x0088, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReqyQmonCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReqyQmonStatus` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:988:13 [INFO] [stdout] | [INFO] [stdout] 988 | register! { ReqyQmonStatus, 0x008C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReqyQmonStatus` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HDropLut` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1152:13 [INFO] [stdout] | [INFO] [stdout] 1152 | register! { HDropLut, 0x6080, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HDropLut` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EdfReserved7004` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1156:13 [INFO] [stdout] | [INFO] [stdout] 1156 | register! { EdfReserved7004, 0x7004, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EdfReserved7004` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1159:13 [INFO] [stdout] | [INFO] [stdout] 1159 | register! { RoDigCtrl, 0x900C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigStartPos` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1160:13 [INFO] [stdout] | [INFO] [stdout] 1160 | register! { RoDigStartPos, 0x9010, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigStartPos` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigEndPos` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1161:13 [INFO] [stdout] | [INFO] [stdout] 1161 | register! { RoDigEndPos, 0x9014, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigEndPos` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX0Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1163:13 [INFO] [stdout] | [INFO] [stdout] 1163 | register! { RoAreaX0Addr, 0x902C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX0Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX1Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1164:13 [INFO] [stdout] | [INFO] [stdout] 1164 | register! { RoAreaX1Addr, 0x9030, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX1Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX2Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1165:13 [INFO] [stdout] | [INFO] [stdout] 1165 | register! { RoAreaX2Addr, 0x9034, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX2Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX3Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1166:13 [INFO] [stdout] | [INFO] [stdout] 1166 | register! { RoAreaX3Addr, 0x9038, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX3Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX4Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1167:13 [INFO] [stdout] | [INFO] [stdout] 1167 | register! { RoAreaX4Addr, 0x903C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX4Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY0Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1168:13 [INFO] [stdout] | [INFO] [stdout] 1168 | register! { RoAreaY0Addr, 0x9040, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY0Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY1Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1169:13 [INFO] [stdout] | [INFO] [stdout] 1169 | register! { RoAreaY1Addr, 0x9044, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY1Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY2Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1170:13 [INFO] [stdout] | [INFO] [stdout] 1170 | register! { RoAreaY2Addr, 0x9048, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY2Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY3Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1171 | register! { RoAreaY3Addr, 0x904C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY3Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY4Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1172:13 [INFO] [stdout] | [INFO] [stdout] 1172 | register! { RoAreaY4Addr, 0x9050, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY4Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoCounterCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1173:13 [INFO] [stdout] | [INFO] [stdout] 1173 | register! { RoCounterCtrl, 0x9054, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoCounterCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoCounterTimerThreshold` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1174:13 [INFO] [stdout] | [INFO] [stdout] 1174 | register! { RoCounterTimerThreshold, 0x9058, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoCounterTimerThreshold` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigitalMaskPixel00` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1175:13 [INFO] [stdout] | [INFO] [stdout] 1175 | register! { RoDigitalMaskPixel00, 0x9100, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigitalMaskPixel00` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigitalMaskPixel63` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1176:13 [INFO] [stdout] | [INFO] [stdout] 1176 | register! { RoDigitalMaskPixel63, 0x91FC, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigitalMaskPixel63` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaCnt00` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1177:13 [INFO] [stdout] | [INFO] [stdout] 1177 | register! { RoAreaCnt00, 0x9200, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaCnt00` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaCnt15` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1178:13 [INFO] [stdout] | [INFO] [stdout] 1178 | register! { RoAreaCnt15, 0x923C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaCnt15` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkReservedC004` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1180:13 [INFO] [stdout] | [INFO] [stdout] 1180 | register! { AfkReservedC004, 0xC004, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkReservedC004` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkFilterPeriod` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1181:13 [INFO] [stdout] | [INFO] [stdout] 1181 | register! { AfkFilterPeriod, 0xC008, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkFilterPeriod` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkInvalidation` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1182:13 [INFO] [stdout] | [INFO] [stdout] 1182 | register! { AfkInvalidation, 0xC0C0, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkInvalidation` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkInitialization` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1183:13 [INFO] [stdout] | [INFO] [stdout] 1183 | register! { AfkInitialization, 0xC0C4, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkInitialization` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcParam` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1185:13 [INFO] [stdout] | [INFO] [stdout] 1185 | register! { StcParam, 0xD004, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcParam` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcTrailParam` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1186:13 [INFO] [stdout] | [INFO] [stdout] 1186 | register! { StcTrailParam, 0xD008, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcTrailParam` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcTimestamping` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1187:13 [INFO] [stdout] | [INFO] [stdout] 1187 | register! { StcTimestamping, 0xD00C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcTimestamping` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcReservedD0C0` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1188:13 [INFO] [stdout] | [INFO] [stdout] 1188 | register! { StcReservedD0C0, 0xD0C0, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcReservedD0C0` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcInitialization` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1189:13 [INFO] [stdout] | [INFO] [stdout] 1189 | register! { StcInitialization, 0xD0C4, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcInitialization` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/configuration.rs:62:24 [INFO] [stdout] | [INFO] [stdout] 62 | if let Some(configuration) = configuration { [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/configuration.rs:65:21 [INFO] [stdout] | [INFO] [stdout] 65 | } [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] 62 ~ match configuration { Some(configuration) => { [INFO] [stdout] 63 | context = update(context, &previous_configuration, &configuration); [INFO] [stdout] 64 | previous_configuration = configuration; [INFO] [stdout] 65 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/configuration.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 86 | if let Some(thread) = self.thread.take() { [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/configuration.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 86 ~ match self.thread.take() { Some(thread) => { [INFO] [stdout] 87 | // unwrap: not joining self [INFO] [stdout] 88 | thread.join().unwrap(); [INFO] [stdout] 89 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/usb.rs:160:24 [INFO] [stdout] | [INFO] [stdout] 160 | if let Err(handle_events_error) = thread_context.handle_events(Some(timeout)) { [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/usb.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 160 ~ match thread_context.handle_events(Some(timeout)) { Err(handle_events_error) => { [INFO] [stdout] 161 | flag.store_error_if_not_set(Error::from(handle_events_error)); [INFO] [stdout] 162 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/usb.rs:178:12 [INFO] [stdout] | [INFO] [stdout] 178 | if let Some(thread) = self.thread.take() { [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/usb.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 178 ~ match self.thread.take() { Some(thread) => { [INFO] [stdout] 179 | thread.join().expect("event loop joined self"); [INFO] [stdout] 180 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 55 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Migrating tests/evt3.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `neuromorphic_drivers` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/devices/prophesee_evk3_hd.rs [INFO] [stderr] * src/devices/prophesee_evk4.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/devices/prophesee_evk3_hd.rs:512:36 [INFO] [stderr] | [INFO] [stderr] 512 | ($name:ident, $register:ident, $configuration:expr_2021, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk3_hd.rs:512:101 [INFO] [stderr] | [INFO] [stderr] 512 | ($name:ident, $register:ident, $configuration:expr_2021, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk4.rs:1036:75 [INFO] [stderr] | [INFO] [stderr] 1036 | ($name:ident, $register:ident, $handle:ident, $previous_biases:ident, $biases: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: aborting due to 3 previous errors [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/usb.rs:295:3 [INFO] [stdout] | [INFO] [stdout] 295 | #[no_mangle] [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] 295 | #[unsafe(no_mangle)] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:512:51 [INFO] [stdout] | [INFO] [stdout] 512 | ($name:ident, $register:ident, $configuration:expr, $handle:ident, $previous_biases:ident, $biases: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] 512 | ($name:ident, $register:ident, $configuration:expr_2021, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk3_hd.rs:512:104 [INFO] [stdout] | [INFO] [stdout] 512 | ($name:ident, $register:ident, $configuration:expr, $handle:ident, $previous_biases:ident, $biases: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] 512 | ($name:ident, $register:ident, $configuration:expr, $handle:ident, $previous_biases:ident, $biases: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/devices/prophesee_evk4.rs:1036:83 [INFO] [stdout] | [INFO] [stdout] 1036 | ($name:ident, $register:ident, $handle:ident, $previous_biases:ident, $biases: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] 1036 | ($name:ident, $register:ident, $handle:ident, $previous_biases:ident, $biases:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/usb.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | extern "system" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 102 | | pub fn libusb_dev_mem_alloc( [INFO] [stdout] 103 | | dev_handle: *mut libusb1_sys::libusb_device_handle, [INFO] [stdout] 104 | | length: libc::ssize_t, [INFO] [stdout] ... | [INFO] [stdout] 111 | | ) -> *mut libc::c_int; [INFO] [stdout] 112 | | } [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 `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/usb.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | self.0.as_mut() [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/usb.rs:235:5 [INFO] [stdout] | [INFO] [stdout] 235 | unsafe fn as_mut(&mut self) -> &mut libusb1_sys::libusb_transfer { [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: method `read` is never used [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:815:8 [INFO] [stdout] | [INFO] [stdout] 808 | trait Register { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 815 | fn read(&self, handle: &rusb::DeviceHandle) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LifoCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:974:13 [INFO] [stdout] | [INFO] [stdout] 974 | register! { LifoCtrl, 0x000C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LifoCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LifoStatus` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:975:13 [INFO] [stdout] | [INFO] [stdout] 975 | register! { LifoStatus, 0x0010, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LifoStatus` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Reserved0014` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:976:13 [INFO] [stdout] | [INFO] [stdout] 976 | register! { Reserved0014, 0x0014, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Reserved0014` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RefractoryCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:977:13 [INFO] [stdout] | [INFO] [stdout] 977 | register! { RefractoryCtrl, 0x0020, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RefractoryCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoiWinCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:978:13 [INFO] [stdout] | [INFO] [stdout] 978 | register! { RoiWinCtrl, 0x0034, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoiWinCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoiWinStartAddr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:979:13 [INFO] [stdout] | [INFO] [stdout] 979 | register! { RoiWinStartAddr, 0x0038, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoiWinStartAddr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoiWinEndAddr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:980:13 [INFO] [stdout] | [INFO] [stdout] 980 | register! { RoiWinEndAddr, 0x003C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoiWinEndAddr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DigPad2Ctrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:981:13 [INFO] [stdout] | [INFO] [stdout] 981 | register! { DigPad2Ctrl, 0x0044, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DigPad2Ctrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AdcControl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:982:13 [INFO] [stdout] | [INFO] [stdout] 982 | register! { AdcControl, 0x004C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AdcControl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AdcStatus` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:983:13 [INFO] [stdout] | [INFO] [stdout] 983 | register! { AdcStatus, 0x0050, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AdcStatus` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TempCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:985:13 [INFO] [stdout] | [INFO] [stdout] 985 | register! { TempCtrl, 0x005C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TempCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IphMirrCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:986:13 [INFO] [stdout] | [INFO] [stdout] 986 | register! { IphMirrCtrl, 0x0074, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IphMirrCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReqyQmonCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:987:13 [INFO] [stdout] | [INFO] [stdout] 987 | register! { ReqyQmonCtrl, 0x0088, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReqyQmonCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReqyQmonStatus` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:988:13 [INFO] [stdout] | [INFO] [stdout] 988 | register! { ReqyQmonStatus, 0x008C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReqyQmonStatus` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HDropLut` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1152:13 [INFO] [stdout] | [INFO] [stdout] 1152 | register! { HDropLut, 0x6080, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HDropLut` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EdfReserved7004` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1156:13 [INFO] [stdout] | [INFO] [stdout] 1156 | register! { EdfReserved7004, 0x7004, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EdfReserved7004` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1159:13 [INFO] [stdout] | [INFO] [stdout] 1159 | register! { RoDigCtrl, 0x900C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigStartPos` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1160:13 [INFO] [stdout] | [INFO] [stdout] 1160 | register! { RoDigStartPos, 0x9010, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigStartPos` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigEndPos` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1161:13 [INFO] [stdout] | [INFO] [stdout] 1161 | register! { RoDigEndPos, 0x9014, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigEndPos` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX0Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1163:13 [INFO] [stdout] | [INFO] [stdout] 1163 | register! { RoAreaX0Addr, 0x902C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX0Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX1Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1164:13 [INFO] [stdout] | [INFO] [stdout] 1164 | register! { RoAreaX1Addr, 0x9030, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX1Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX2Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1165:13 [INFO] [stdout] | [INFO] [stdout] 1165 | register! { RoAreaX2Addr, 0x9034, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX2Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX3Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1166:13 [INFO] [stdout] | [INFO] [stdout] 1166 | register! { RoAreaX3Addr, 0x9038, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX3Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaX4Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1167:13 [INFO] [stdout] | [INFO] [stdout] 1167 | register! { RoAreaX4Addr, 0x903C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaX4Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY0Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1168:13 [INFO] [stdout] | [INFO] [stdout] 1168 | register! { RoAreaY0Addr, 0x9040, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY0Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY1Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1169:13 [INFO] [stdout] | [INFO] [stdout] 1169 | register! { RoAreaY1Addr, 0x9044, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY1Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY2Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1170:13 [INFO] [stdout] | [INFO] [stdout] 1170 | register! { RoAreaY2Addr, 0x9048, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY2Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY3Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1171 | register! { RoAreaY3Addr, 0x904C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY3Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaY4Addr` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1172:13 [INFO] [stdout] | [INFO] [stdout] 1172 | register! { RoAreaY4Addr, 0x9050, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaY4Addr` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoCounterCtrl` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1173:13 [INFO] [stdout] | [INFO] [stdout] 1173 | register! { RoCounterCtrl, 0x9054, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoCounterCtrl` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoCounterTimerThreshold` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1174:13 [INFO] [stdout] | [INFO] [stdout] 1174 | register! { RoCounterTimerThreshold, 0x9058, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoCounterTimerThreshold` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigitalMaskPixel00` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1175:13 [INFO] [stdout] | [INFO] [stdout] 1175 | register! { RoDigitalMaskPixel00, 0x9100, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigitalMaskPixel00` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoDigitalMaskPixel63` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1176:13 [INFO] [stdout] | [INFO] [stdout] 1176 | register! { RoDigitalMaskPixel63, 0x91FC, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoDigitalMaskPixel63` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaCnt00` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1177:13 [INFO] [stdout] | [INFO] [stdout] 1177 | register! { RoAreaCnt00, 0x9200, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaCnt00` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoAreaCnt15` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1178:13 [INFO] [stdout] | [INFO] [stdout] 1178 | register! { RoAreaCnt15, 0x923C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RoAreaCnt15` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkReservedC004` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1180:13 [INFO] [stdout] | [INFO] [stdout] 1180 | register! { AfkReservedC004, 0xC004, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkReservedC004` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkFilterPeriod` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1181:13 [INFO] [stdout] | [INFO] [stdout] 1181 | register! { AfkFilterPeriod, 0xC008, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkFilterPeriod` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkInvalidation` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1182:13 [INFO] [stdout] | [INFO] [stdout] 1182 | register! { AfkInvalidation, 0xC0C0, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkInvalidation` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AfkInitialization` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1183:13 [INFO] [stdout] | [INFO] [stdout] 1183 | register! { AfkInitialization, 0xC0C4, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AfkInitialization` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcParam` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1185:13 [INFO] [stdout] | [INFO] [stdout] 1185 | register! { StcParam, 0xD004, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcParam` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcTrailParam` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1186:13 [INFO] [stdout] | [INFO] [stdout] 1186 | register! { StcTrailParam, 0xD008, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcTrailParam` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcTimestamping` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1187:13 [INFO] [stdout] | [INFO] [stdout] 1187 | register! { StcTimestamping, 0xD00C, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcTimestamping` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcReservedD0C0` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1188:13 [INFO] [stdout] | [INFO] [stdout] 1188 | register! { StcReservedD0C0, 0xD0C0, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcReservedD0C0` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StcInitialization` is never constructed [INFO] [stdout] --> src/devices/prophesee_evk3_hd.rs:1189:13 [INFO] [stdout] | [INFO] [stdout] 1189 | register! { StcInitialization, 0xD0C4, { value: 0..32 } } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StcInitialization` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: this warning originates in the macro `register` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/configuration.rs:62:24 [INFO] [stdout] | [INFO] [stdout] 62 | if let Some(configuration) = configuration { [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/configuration.rs:65:21 [INFO] [stdout] | [INFO] [stdout] 65 | } [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] 62 ~ match configuration { Some(configuration) => { [INFO] [stdout] 63 | context = update(context, &previous_configuration, &configuration); [INFO] [stdout] 64 | previous_configuration = configuration; [INFO] [stdout] 65 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/configuration.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 86 | if let Some(thread) = self.thread.take() { [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/configuration.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 86 ~ match self.thread.take() { Some(thread) => { [INFO] [stdout] 87 | // unwrap: not joining self [INFO] [stdout] 88 | thread.join().unwrap(); [INFO] [stdout] 89 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/usb.rs:160:24 [INFO] [stdout] | [INFO] [stdout] 160 | if let Err(handle_events_error) = thread_context.handle_events(Some(timeout)) { [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/usb.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 160 ~ match thread_context.handle_events(Some(timeout)) { Err(handle_events_error) => { [INFO] [stdout] 161 | flag.store_error_if_not_set(Error::from(handle_events_error)); [INFO] [stdout] 162 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/usb.rs:178:12 [INFO] [stdout] | [INFO] [stdout] 178 | if let Some(thread) = self.thread.take() { [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/usb.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 178 ~ match self.thread.take() { Some(thread) => { [INFO] [stdout] 179 | thread.join().expect("event loop joined self"); [INFO] [stdout] 180 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 55 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Migrating tests/evk4.rs from 2021 edition to 2024 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.67s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking neuromorphic-drivers v0.14.0 (/tmp/fixit) [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/usb.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | / extern "system" { [INFO] [stdout] 102 | | pub fn libusb_dev_mem_alloc( [INFO] [stdout] 103 | | dev_handle: *mut libusb1_sys::libusb_device_handle, [INFO] [stdout] 104 | | length: libc::ssize_t, [INFO] [stdout] ... | [INFO] [stdout] 111 | | ) -> *mut libc::c_int; [INFO] [stdout] 112 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/usb.rs:295:3 [INFO] [stdout] | [INFO] [stdout] 295 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 295 | #[unsafe(no_mangle)] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/usb.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | / extern "system" { [INFO] [stdout] 102 | | pub fn libusb_dev_mem_alloc( [INFO] [stdout] 103 | | dev_handle: *mut libusb1_sys::libusb_device_handle, [INFO] [stdout] 104 | | length: libc::ssize_t, [INFO] [stdout] ... | [INFO] [stdout] 111 | | ) -> *mut libc::c_int; [INFO] [stdout] 112 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/usb.rs:295:3 [INFO] [stdout] | [INFO] [stdout] 295 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 295 | #[unsafe(no_mangle)] [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/usb.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | self.0.as_mut() [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/usb.rs:235:5 [INFO] [stdout] | [INFO] [stdout] 235 | unsafe fn as_mut(&mut self) -> &mut libusb1_sys::libusb_transfer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 1 warning 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 `neuromorphic-drivers` (lib) due to 3 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/usb.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | self.0.as_mut() [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/usb.rs:235:5 [INFO] [stdout] | [INFO] [stdout] 235 | unsafe fn as_mut(&mut self) -> &mut libusb1_sys::libusb_transfer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 1 warning 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 `neuromorphic-drivers` (lib test) due to 3 previous errors; 1 warning 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" "8e2128bf6999c7848af93892817e0808e9eeee3c681d19551ebfba8d4edfd51e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8e2128bf6999c7848af93892817e0808e9eeee3c681d19551ebfba8d4edfd51e", kill_on_drop: false }` [INFO] [stdout] 8e2128bf6999c7848af93892817e0808e9eeee3c681d19551ebfba8d4edfd51e