[INFO] fetching crate bq769x0 0.3.1...
[INFO] checking bq769x0-0.3.1 against try#264a7c4a1c917c83d13895a31231f9d93c7b67e1 for pr-132289
[INFO] extracting crate bq769x0 0.3.1 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate bq769x0 0.3.1 on toolchain 264a7c4a1c917c83d13895a31231f9d93c7b67e1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+264a7c4a1c917c83d13895a31231f9d93c7b67e1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate bq769x0 0.3.1
[INFO] finished tweaking crates.io crate bq769x0 0.3.1
[INFO] tweaked toml for crates.io crate bq769x0 0.3.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+264a7c4a1c917c83d13895a31231f9d93c7b67e1" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 29 packages to latest compatible versions
[INFO] [stderr]       Adding bitflags v1.3.2 (available: v2.6.0)
[INFO] [stderr]       Adding cortex-m v0.6.7 (available: v0.7.7)
[INFO] [stderr]       Adding embedded-hal v0.2.7 (available: v1.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+264a7c4a1c917c83d13895a31231f9d93c7b67e1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+264a7c4a1c917c83d13895a31231f9d93c7b67e1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 98ccd357792c22e0ce289ab869d58feff47434cf147bdf435b026ba65424a769
[INFO] running `Command { std: "docker" "start" "-a" "98ccd357792c22e0ce289ab869d58feff47434cf147bdf435b026ba65424a769", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "98ccd357792c22e0ce289ab869d58feff47434cf147bdf435b026ba65424a769", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "98ccd357792c22e0ce289ab869d58feff47434cf147bdf435b026ba65424a769", kill_on_drop: false }`
[INFO] [stdout] 98ccd357792c22e0ce289ab869d58feff47434cf147bdf435b026ba65424a769
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+264a7c4a1c917c83d13895a31231f9d93c7b67e1" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f095d4be6abf94897df75d1f99ca24ecd3b8e145c8bbbd702c5f1016ccafe8e8
[INFO] running `Command { std: "docker" "start" "-a" "f095d4be6abf94897df75d1f99ca24ecd3b8e145c8bbbd702c5f1016ccafe8e8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.89
[INFO] [stderr]    Compiling cortex-m v0.7.7
[INFO] [stderr]     Checking nb v1.1.0
[INFO] [stderr]     Checking vcell v0.1.3
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking bitfield v0.13.2
[INFO] [stderr]    Compiling cortex-m v0.6.7
[INFO] [stderr]    Compiling serde v1.0.214
[INFO] [stderr]     Checking crc-any v2.5.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]     Checking generic-array v0.13.3
[INFO] [stderr]     Checking volatile-register v0.2.2
[INFO] [stderr]     Checking nb v0.1.3
[INFO] [stderr]     Checking embedded-hal v0.2.7
[INFO] [stderr]    Compiling bare-metal v0.2.5
[INFO] [stderr]     Checking as-slice v0.1.5
[INFO] [stderr]     Checking aligned v0.3.5
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling syn v2.0.85
[INFO] [stderr]    Compiling serde_derive v1.0.214
[INFO] [stderr]     Checking bq769x0 v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_generics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: removed in favor of `#![feature(adt_const_params)]` and `#![feature(generic_const_exprs)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_generics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: removed in favor of `#![feature(adt_const_params)]` and `#![feature(generic_const_exprs)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(const_evaluatable_checked)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: renamed to `generic_const_exprs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(const_evaluatable_checked)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: renamed to `generic_const_exprs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: generic parameters may not be used in const operations
[INFO] [stdout]    --> src/lib.rs:450:44
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                                            ^ cannot perform const operation using `X`
[INFO] [stdout]     |
[INFO] [stdout]     = help: const parameters may only be used as standalone arguments, i.e. `X`
[INFO] [stdout]     = help: add `#![feature(generic_const_exprs)]` to allow generic const expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: generic parameters may not be used in const operations
[INFO] [stdout]    --> src/lib.rs:450:64
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                                                                ^ cannot perform const operation using `X`
[INFO] [stdout]     |
[INFO] [stdout]     = help: const parameters may only be used as standalone arguments, i.e. `X`
[INFO] [stdout]     = help: add `#![feature(generic_const_exprs)]` to allow generic const expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: generic parameters may not be used in const operations
[INFO] [stdout]    --> src/lib.rs:634:29
[INFO] [stdout]     |
[INFO] [stdout] 634 |         let mut buf = [0u8; X * 2];
[INFO] [stdout]     |                             ^ cannot perform const operation using `X`
[INFO] [stdout]     |
[INFO] [stdout]     = help: const parameters may only be used as standalone arguments, i.e. `X`
[INFO] [stdout]     = help: add `#![feature(generic_const_exprs)]` to allow generic const expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `std`
[INFO] [stdout]  --> src/lib.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg_attr(not(std), no_std)]
[INFO] [stdout]   |                 ^^^ help: found config with similar value: `feature = "std"`
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(std)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(std)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `no_std`
[INFO] [stdout]    --> src/lib.rs:500:15
[INFO] [stdout]     |
[INFO] [stdout] 500 |         #[cfg(no_std)] {
[INFO] [stdout]     |               ^^^^^^ help: found config with similar value: `feature = "no_std"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(no_std)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(no_std)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `no_std`
[INFO] [stdout]    --> src/lib.rs:554:15
[INFO] [stdout]     |
[INFO] [stdout] 554 |         #[cfg(no_std)] {
[INFO] [stdout]     |               ^^^^^^ help: found config with similar value: `feature = "no_std"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(no_std)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(no_std)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: generic parameters may not be used in const operations
[INFO] [stdout]    --> src/lib.rs:450:44
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                                            ^ cannot perform const operation using `X`
[INFO] [stdout]     |
[INFO] [stdout]     = help: const parameters may only be used as standalone arguments, i.e. `X`
[INFO] [stdout]     = help: add `#![feature(generic_const_exprs)]` to allow generic const expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: generic parameters may not be used in const operations
[INFO] [stdout]    --> src/lib.rs:450:64
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                                                                ^ cannot perform const operation using `X`
[INFO] [stdout]     |
[INFO] [stdout]     = help: const parameters may only be used as standalone arguments, i.e. `X`
[INFO] [stdout]     = help: add `#![feature(generic_const_exprs)]` to allow generic const expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: generic parameters may not be used in const operations
[INFO] [stdout]    --> src/lib.rs:634:29
[INFO] [stdout]     |
[INFO] [stdout] 634 |         let mut buf = [0u8; X * 2];
[INFO] [stdout]     |                             ^ cannot perform const operation using `X`
[INFO] [stdout]     |
[INFO] [stdout]     = help: const parameters may only be used as standalone arguments, i.e. `X`
[INFO] [stdout]     = help: add `#![feature(generic_const_exprs)]` to allow generic const expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_panic` has been stable since 1.57.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![feature(const_panic)]
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `std`
[INFO] [stdout]  --> src/lib.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg_attr(not(std), no_std)]
[INFO] [stdout]   |                 ^^^ help: found config with similar value: `feature = "std"`
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(std)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(std)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `no_std`
[INFO] [stdout]    --> src/lib.rs:500:15
[INFO] [stdout]     |
[INFO] [stdout] 500 |         #[cfg(no_std)] {
[INFO] [stdout]     |               ^^^^^^ help: found config with similar value: `feature = "no_std"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(no_std)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(no_std)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `no_std`
[INFO] [stdout]    --> src/lib.rs:554:15
[INFO] [stdout]     |
[INFO] [stdout] 554 |         #[cfg(no_std)] {
[INFO] [stdout]     |               ^^^^^^ help: found config with similar value: `feature = "no_std"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(no_std)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(no_std)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_panic` has been stable since 1.57.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![feature(const_panic)]
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:616:14
[INFO] [stdout]     |
[INFO] [stdout] 616 |         self.read_raw(i2c, 0x50, &mut gain1_offset)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:617:14
[INFO] [stdout]     |
[INFO] [stdout] 617 |         self.read_raw(i2c, 0x59, &mut gain2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `is_initialized` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:631:18
[INFO] [stdout]     |
[INFO] [stdout] 631 |         if !self.is_initialized() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:635:14
[INFO] [stdout]     |
[INFO] [stdout] 635 |         self.read_raw(i2c, 0x0c, &mut buf)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:636:27
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let adc_tf = self.adc_transfer_function();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:672:14
[INFO] [stdout]     |
[INFO] [stdout] 672 |         self.write_raw(i2c, 0x01, &[cells])
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:679:14
[INFO] [stdout]     |
[INFO] [stdout] 679 |         self.read_raw(i2c, 0x01, &mut data)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:692:14
[INFO] [stdout]     |
[INFO] [stdout] 692 |         self.read_raw(i2c, 0x32, &mut cc)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:708:14
[INFO] [stdout]     |
[INFO] [stdout] 708 |         self.read_raw(i2c, 0x2a, &mut vv)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:718:14
[INFO] [stdout]     |
[INFO] [stdout] 718 |         self.read_raw(i2c, 0x2c, &mut ts)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `temperature_source` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:721:20
[INFO] [stdout]     |
[INFO] [stdout] 721 |         match self.temperature_source(i2c)? {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:616:14
[INFO] [stdout]     |
[INFO] [stdout] 616 |         self.read_raw(i2c, 0x50, &mut gain1_offset)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:748:14
[INFO] [stdout]     |
[INFO] [stdout] 748 |         self.read_raw(i2c, 0x00, &mut data)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:617:14
[INFO] [stdout]     |
[INFO] [stdout] 617 |         self.read_raw(i2c, 0x59, &mut gain2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:755:14
[INFO] [stdout]     |
[INFO] [stdout] 755 |         self.write_raw(i2c, 0x00, &[flags.bits()])
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:762:14
[INFO] [stdout]     |
[INFO] [stdout] 762 |         self.read_raw(i2c, 0x05, &mut sys_ctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `is_initialized` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:631:18
[INFO] [stdout]     |
[INFO] [stdout] 631 |         if !self.is_initialized() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:635:14
[INFO] [stdout]     |
[INFO] [stdout] 635 |         self.read_raw(i2c, 0x0c, &mut buf)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:772:14
[INFO] [stdout]     |
[INFO] [stdout] 772 |         self.write_raw(i2c, 0x05, &sys_ctrl2)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:779:14
[INFO] [stdout]     |
[INFO] [stdout] 779 |         self.read_raw(i2c, 0x05, &mut sys_ctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:636:27
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let adc_tf = self.adc_transfer_function();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:789:14
[INFO] [stdout]     |
[INFO] [stdout] 789 |         self.write_raw(i2c, 0x05, &sys_ctrl2)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:796:14
[INFO] [stdout]     |
[INFO] [stdout] 796 |         self.read_raw(i2c, 0x05, &mut sys_ctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:803:14
[INFO] [stdout]     |
[INFO] [stdout] 803 |         self.write_raw(i2c, 0x04, &[0b0000_0000])?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:804:14
[INFO] [stdout]     |
[INFO] [stdout] 804 |         self.write_raw(i2c, 0x04, &[0b0000_0001])?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:805:14
[INFO] [stdout]     |
[INFO] [stdout] 805 |         self.write_raw(i2c, 0x04, &[0b0000_0010])?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:672:14
[INFO] [stdout]     |
[INFO] [stdout] 672 |         self.write_raw(i2c, 0x01, &[cells])
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:819:15
[INFO] [stdout]     |
[INFO] [stdout] 819 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:679:14
[INFO] [stdout]     |
[INFO] [stdout] 679 |         self.read_raw(i2c, 0x01, &mut data)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:819:68
[INFO] [stdout]     |
[INFO] [stdout] 819 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:825:15
[INFO] [stdout]     |
[INFO] [stdout] 825 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:692:14
[INFO] [stdout]     |
[INFO] [stdout] 692 |         self.read_raw(i2c, 0x32, &mut cc)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:825:68
[INFO] [stdout]     |
[INFO] [stdout] 825 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:708:14
[INFO] [stdout]     |
[INFO] [stdout] 708 |         self.read_raw(i2c, 0x2a, &mut vv)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_adc_characteristics` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:831:14
[INFO] [stdout]     |
[INFO] [stdout] 831 |         self.read_adc_characteristics(i2c)?;
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:718:14
[INFO] [stdout]     |
[INFO] [stdout] 718 |         self.read_raw(i2c, 0x2c, &mut ts)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `ov_voltage_range` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:864:30
[INFO] [stdout]     |
[INFO] [stdout] 864 |         let ov_limits = self.ov_voltage_range();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `uv_voltage_range` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:871:30
[INFO] [stdout]     |
[INFO] [stdout] 871 |         let uv_limits = self.uv_voltage_range();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `temperature_source` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:721:20
[INFO] [stdout]     |
[INFO] [stdout] 721 |         match self.temperature_source(i2c)? {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:882:14
[INFO] [stdout]     |
[INFO] [stdout] 882 |         self.write_raw(i2c, 0x06, &regs)?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:748:14
[INFO] [stdout]     |
[INFO] [stdout] 748 |         self.read_raw(i2c, 0x00, &mut data)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:887:14
[INFO] [stdout]     |
[INFO] [stdout] 887 |         self.read_raw(i2c, 0x05, &mut sysctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:889:14
[INFO] [stdout]     |
[INFO] [stdout] 889 |         self.write_raw(i2c, 0x05, &sysctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:755:14
[INFO] [stdout]     |
[INFO] [stdout] 755 |         self.write_raw(i2c, 0x00, &[flags.bits()])
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:895:32
[INFO] [stdout]     |
[INFO] [stdout] 895 |             uv_threshold: self.adc_transfer_function().apply(0b01_0000_0000_0000 | ((uv_bits as u16) << 4)),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:762:14
[INFO] [stdout]     |
[INFO] [stdout] 762 |         self.read_raw(i2c, 0x05, &mut sys_ctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:896:32
[INFO] [stdout]     |
[INFO] [stdout] 896 |             ov_threshold: self.adc_transfer_function().apply(0b10_0000_0000_1000 | ((ov_bits as u16) << 4))
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:904:14
[INFO] [stdout]     |
[INFO] [stdout] 904 |         self.read_raw(i2c, 0x04, &mut sysctrl1)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:772:14
[INFO] [stdout]     |
[INFO] [stdout] 772 |         self.write_raw(i2c, 0x05, &sys_ctrl2)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:907:14
[INFO] [stdout]     |
[INFO] [stdout] 907 |         self.write_raw(i2c, 0x04, &sysctrl1)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:914:14
[INFO] [stdout]     |
[INFO] [stdout] 914 |         self.read_raw(i2c, 0x04, &mut sysctrl1)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:779:14
[INFO] [stdout]     |
[INFO] [stdout] 779 |         self.read_raw(i2c, 0x05, &mut sys_ctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:918:14
[INFO] [stdout]     |
[INFO] [stdout] 918 |         self.write_raw(i2c, 0x04, &sysctrl1)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:925:14
[INFO] [stdout]     |
[INFO] [stdout] 925 |         self.read_raw(i2c, 0x04, &mut sysctrl1)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:939:14
[INFO] [stdout]     |
[INFO] [stdout] 939 |         self.read_raw(i2c, 0x05, &mut sysctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:789:14
[INFO] [stdout]     |
[INFO] [stdout] 789 |         self.write_raw(i2c, 0x05, &sys_ctrl2)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:796:14
[INFO] [stdout]     |
[INFO] [stdout] 796 |         self.read_raw(i2c, 0x05, &mut sys_ctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:946:14
[INFO] [stdout]     |
[INFO] [stdout] 946 |         self.write_raw(i2c, 0x05, &sysctrl2)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:803:14
[INFO] [stdout]     |
[INFO] [stdout] 803 |         self.write_raw(i2c, 0x04, &[0b0000_0000])?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:804:14
[INFO] [stdout]     |
[INFO] [stdout] 804 |         self.write_raw(i2c, 0x04, &[0b0000_0001])?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:805:14
[INFO] [stdout]     |
[INFO] [stdout] 805 |         self.write_raw(i2c, 0x04, &[0b0000_0010])?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:819:15
[INFO] [stdout]     |
[INFO] [stdout] 819 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:819:68
[INFO] [stdout]     |
[INFO] [stdout] 819 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:825:15
[INFO] [stdout]     |
[INFO] [stdout] 825 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0557, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0557`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for reference `&BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:825:68
[INFO] [stdout]     |
[INFO] [stdout] 825 |         (self.adc_transfer_function().apply(min_adc_reading), self.adc_transfer_function().apply(max_adc_reading))
[INFO] [stdout]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_adc_characteristics` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:831:14
[INFO] [stdout]     |
[INFO] [stdout] 831 |         self.read_adc_characteristics(i2c)?;
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bq769x0` (lib) due to 45 previous errors; 4 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: the method `ov_voltage_range` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:864:30
[INFO] [stdout]     |
[INFO] [stdout] 864 |         let ov_limits = self.ov_voltage_range();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `uv_voltage_range` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:871:30
[INFO] [stdout]     |
[INFO] [stdout] 871 |         let uv_limits = self.uv_voltage_range();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:882:14
[INFO] [stdout]     |
[INFO] [stdout] 882 |         self.write_raw(i2c, 0x06, &regs)?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:887:14
[INFO] [stdout]     |
[INFO] [stdout] 887 |         self.read_raw(i2c, 0x05, &mut sysctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:889:14
[INFO] [stdout]     |
[INFO] [stdout] 889 |         self.write_raw(i2c, 0x05, &sysctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:895:32
[INFO] [stdout]     |
[INFO] [stdout] 895 |             uv_threshold: self.adc_transfer_function().apply(0b01_0000_0000_0000 | ((uv_bits as u16) << 4)),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `adc_transfer_function` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:896:32
[INFO] [stdout]     |
[INFO] [stdout] 896 |             ov_threshold: self.adc_transfer_function().apply(0b10_0000_0000_1000 | ((ov_bits as u16) << 4))
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:904:14
[INFO] [stdout]     |
[INFO] [stdout] 904 |         self.read_raw(i2c, 0x04, &mut sysctrl1)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:907:14
[INFO] [stdout]     |
[INFO] [stdout] 907 |         self.write_raw(i2c, 0x04, &sysctrl1)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:914:14
[INFO] [stdout]     |
[INFO] [stdout] 914 |         self.read_raw(i2c, 0x04, &mut sysctrl1)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:918:14
[INFO] [stdout]     |
[INFO] [stdout] 918 |         self.write_raw(i2c, 0x04, &sysctrl1)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:925:14
[INFO] [stdout]     |
[INFO] [stdout] 925 |         self.read_raw(i2c, 0x04, &mut sysctrl1)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `read_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:939:14
[INFO] [stdout]     |
[INFO] [stdout] 939 |         self.read_raw(i2c, 0x05, &mut sysctrl2)?;
[INFO] [stdout]     |              ^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `write_raw` exists for mutable reference `&mut BQ769x0<X>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:946:14
[INFO] [stdout]     |
[INFO] [stdout] 946 |         self.write_raw(i2c, 0x05, &sysctrl2)
[INFO] [stdout]     |              ^^^^^^^^^ method cannot be called on `&mut BQ769x0<X>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]    --> src/lib.rs:450:52
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]     |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `new` exists for struct `BQ769x0<_>`, but its trait bounds were not satisfied
[INFO] [stdout]     --> src/lib.rs:1039:36
[INFO] [stdout]      |
[INFO] [stdout] 21   | pub struct BQ769x0<const X: usize> {
[INFO] [stdout]      | ---------------------------------- function or associated item `new` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 1039 |         let mut bq769x0 = BQ769x0::new(0x08);
[INFO] [stdout]      |                                    ^^^ function or associated item cannot be called on `BQ769x0<_>` due to unsatisfied trait bounds
[INFO] [stdout]      |
[INFO] [stdout] note: trait bound `[(); {const error}]: Sized` was not satisfied
[INFO] [stdout]     --> src/lib.rs:450:52
[INFO] [stdout]      |
[INFO] [stdout] 450  | impl<const X: usize> BQ769x0<X> where [(); X * 2]: Sized, [(); X * 4]: Sized {
[INFO] [stdout]      |                      ----------                    ^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]      = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]      = note: the following trait defines an item `new`, perhaps you need to implement it:
[INFO] [stdout]              candidate #1: `Frame`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0557, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0557`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bq769x0` (lib test) due to 46 previous errors; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "f095d4be6abf94897df75d1f99ca24ecd3b8e145c8bbbd702c5f1016ccafe8e8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f095d4be6abf94897df75d1f99ca24ecd3b8e145c8bbbd702c5f1016ccafe8e8", kill_on_drop: false }`
[INFO] [stdout] f095d4be6abf94897df75d1f99ca24ecd3b8e145c8bbbd702c5f1016ccafe8e8
