[INFO] fetching crate stm32f7x7-hal 0.2.1...
[INFO] testing stm32f7x7-hal-0.2.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-8
[INFO] extracting crate stm32f7x7-hal 0.2.1 into /workspace/builds/worker-2-tc1/source
[INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config
[INFO] started tweaking crates.io crate stm32f7x7-hal 0.2.1
[INFO] finished tweaking crates.io crate stm32f7x7-hal 0.2.1
[INFO] tweaked toml for crates.io crate stm32f7x7-hal 0.2.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate stm32f7x7-hal 0.2.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 32 packages to latest compatible versions
[INFO] [stderr]       Adding cast v0.2.7 (available: v0.3.0)
[INFO] [stderr]       Adding cortex-m v0.6.7 (available: v0.7.7)
[INFO] [stderr]       Adding cortex-m-rt v0.6.15 (available: v0.7.5)
[INFO] [stderr]       Adding embedded-hal v0.2.7 (available: v1.0.0)
[INFO] [stderr]       Adding nb v0.1.3 (available: v1.1.0)
[INFO] [stderr]       Adding stm32f7 v0.7.1 (available: v0.16.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded embedded-hal v0.2.7
[INFO] [stderr]   Downloaded cortex-m v0.6.7
[INFO] [stderr]   Downloaded r0 v0.2.2
[INFO] [stderr]   Downloaded cortex-m-rt-macros v0.6.15
[INFO] [stderr]   Downloaded nb v1.1.0
[INFO] [stderr]   Downloaded as-slice v0.1.5
[INFO] [stderr]   Downloaded cortex-m-rt v0.6.15
[INFO] [stderr]   Downloaded nb v0.1.3
[INFO] [stderr]   Downloaded generic-array v0.13.3
[INFO] [stderr]   Downloaded volatile-register v0.2.2
[INFO] [stderr]   Downloaded vcell v0.1.3
[INFO] [stderr]   Downloaded aligned v0.3.5
[INFO] [stderr]   Downloaded stm32f7 v0.7.1
[INFO] [stderr]   Downloaded bare-metal v0.2.5
[INFO] [stderr]   Downloaded bitfield v0.13.2
[INFO] [stderr]   Downloaded cortex-m v0.7.7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 49e6abf5f924f68e19d14e56b099da3f29958b1389c99435f2225824ffe0f786
[INFO] running `Command { std: "docker" "start" "-a" "49e6abf5f924f68e19d14e56b099da3f29958b1389c99435f2225824ffe0f786", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "49e6abf5f924f68e19d14e56b099da3f29958b1389c99435f2225824ffe0f786", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "49e6abf5f924f68e19d14e56b099da3f29958b1389c99435f2225824ffe0f786", kill_on_drop: false }`
[INFO] [stdout] 49e6abf5f924f68e19d14e56b099da3f29958b1389c99435f2225824ffe0f786
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4eb078313a55301535002d95997e5713e7c45b91673db29b79688f48cfeb7e93
[INFO] running `Command { std: "docker" "start" "-a" "4eb078313a55301535002d95997e5713e7c45b91673db29b79688f48cfeb7e93", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling nb v1.1.0
[INFO] [stderr]    Compiling cortex-m v0.7.7
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling generic-array v0.13.3
[INFO] [stderr]    Compiling generic-array v0.12.4
[INFO] [stderr]    Compiling vcell v0.1.3
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling volatile-register v0.2.2
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling embedded-hal v0.2.7
[INFO] [stderr]    Compiling bitfield v0.13.2
[INFO] [stderr]    Compiling cortex-m v0.6.7
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling cortex-m-rt v0.6.15
[INFO] [stderr]    Compiling stm32f7 v0.7.1
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling r0 v0.2.2
[INFO] [stderr]    Compiling bare-metal v0.2.5
[INFO] [stderr]    Compiling as-slice v0.1.5
[INFO] [stderr]    Compiling aligned v0.3.5
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.6.15
[INFO] [stderr]    Compiling stm32f7x7-hal v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]     --> src/adc.rs:918:26
[INFO] [stdout]      |
[INFO] [stdout]  918 |                         0...9   => self.adc_reg.smpr2.modify(|r, w| unsafe { w.bits(replace_bits(r.bits(), ch, 3, st)) }),
[INFO] [stdout]      |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 1006 | adc!(ADC1 => (adc1, ADC_COMMON, apb2enr, adc1en, apb2rstr, adcrst));
[INFO] [stdout]      | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout]      = note: this warning originates in the macro `adc` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]     --> src/adc.rs:919:27
[INFO] [stdout]      |
[INFO] [stdout]  919 |                         10...18 => self.adc_reg.smpr1.modify(|r, w| unsafe { w.bits(replace_bits(r.bits(), ch-10, 3, st)) }),
[INFO] [stdout]      |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 1006 | adc!(ADC1 => (adc1, ADC_COMMON, apb2enr, adc1en, apb2rstr, adcrst));
[INFO] [stdout]      | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: this warning originates in the macro `adc` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]     --> src/adc.rs:918:26
[INFO] [stdout]      |
[INFO] [stdout]  918 |                         0...9   => self.adc_reg.smpr2.modify(|r, w| unsafe { w.bits(replace_bits(r.bits(), ch, 3, st)) }),
[INFO] [stdout]      |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 1007 | adc!(ADC2 => (adc2, ADC_COMMON, apb2enr, adc2en, apb2rstr, adcrst));
[INFO] [stdout]      | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: this warning originates in the macro `adc` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]     --> src/adc.rs:919:27
[INFO] [stdout]      |
[INFO] [stdout]  919 |                         10...18 => self.adc_reg.smpr1.modify(|r, w| unsafe { w.bits(replace_bits(r.bits(), ch-10, 3, st)) }),
[INFO] [stdout]      |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 1007 | adc!(ADC2 => (adc2, ADC_COMMON, apb2enr, adc2en, apb2rstr, adcrst));
[INFO] [stdout]      | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: this warning originates in the macro `adc` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]     --> src/adc.rs:918:26
[INFO] [stdout]      |
[INFO] [stdout]  918 |                         0...9   => self.adc_reg.smpr2.modify(|r, w| unsafe { w.bits(replace_bits(r.bits(), ch, 3, st)) }),
[INFO] [stdout]      |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 1008 | adc!(ADC3 => (adc3, ADC_COMMON, apb2enr, adc3en, apb2rstr, adcrst));
[INFO] [stdout]      | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: this warning originates in the macro `adc` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]     --> src/adc.rs:919:27
[INFO] [stdout]      |
[INFO] [stdout]  919 |                         10...18 => self.adc_reg.smpr1.modify(|r, w| unsafe { w.bits(replace_bits(r.bits(), ch-10, 3, st)) }),
[INFO] [stdout]      |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 1008 | adc!(ADC3 => (adc3, ADC_COMMON, apb2enr, adc3en, apb2rstr, adcrst));
[INFO] [stdout]      | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: this warning originates in the macro `adc` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:195:26
[INFO] [stdout]     |
[INFO] [stdout] 195 |                           0...3 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |                           4...7 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:205:26
[INFO] [stdout]     |
[INFO] [stdout] 205 |                           8...11 => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/gpio.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                           12...15 => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/rcc.rs:236:18
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 3...5 => 0b1001,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/rcc.rs:237:18
[INFO] [stdout]     |
[INFO] [stdout] 237 |                 6...11 => 0b1010,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/rcc.rs:238:19
[INFO] [stdout]     |
[INFO] [stdout] 238 |                 12...39 => 0b1011,
[INFO] [stdout]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/rcc.rs:239:19
[INFO] [stdout]     |
[INFO] [stdout] 239 |                 40...95 => 0b1100,
[INFO] [stdout]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/rcc.rs:240:19
[INFO] [stdout]     |
[INFO] [stdout] 240 |                 96...191 => 0b1101,
[INFO] [stdout]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/rcc.rs:241:20
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 192...383 => 0b1110,
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:401:14
[INFO] [stdout]     |
[INFO] [stdout] 401 |             1...2 => 0b000,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:402:14
[INFO] [stdout]     |
[INFO] [stdout] 402 |             3...5 => 0b001,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:403:14
[INFO] [stdout]     |
[INFO] [stdout] 403 |             6...11 => 0b010,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:404:15
[INFO] [stdout]     |
[INFO] [stdout] 404 |             12...23 => 0b011,
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:405:15
[INFO] [stdout]     |
[INFO] [stdout] 405 |             24...47 => 0b100,
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:406:15
[INFO] [stdout]     |
[INFO] [stdout] 406 |             48...95 => 0b101,
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spi.rs:407:15
[INFO] [stdout]     |
[INFO] [stdout] 407 |             96...191 => 0b110,
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `recv_byte` is never used
[INFO] [stdout]    --> src/i2c.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 210 | trait I2cCommon {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 213 |     fn recv_byte(&self) -> Result<u8, Error>;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 | let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 656 | / gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 | |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 658 | |     PA1: (pa1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 659 | |     PA2: (pa2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 672 | |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 656 ~ let _ = gpio!(GPIOA, gpioa, gpioaen, PA, 0, [
[INFO] [stdout] 657 |     PA0: (pa0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 672 |     PA15: (pa15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 673 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 | let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 675 | / gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 | |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 677 | |     PB1: (pb1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 678 | |     PB2: (pb2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 ~ let _ = gpio!(GPIOB, gpiob, gpioben, PB, 1, [
[INFO] [stdout] 676 |     PB0: (pb0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 691 |     PB15: (pb15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 692 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 | let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 694 | / gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 | |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 696 | |     PC1: (pc1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 697 | |     PC2: (pc2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 710 | |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 694 ~ let _ = gpio!(GPIOC, gpioc, gpiocen, PC, 2, [
[INFO] [stdout] 695 |     PC0: (pc0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 710 |     PC15: (pc15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 711 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 | let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 713 | / gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 | |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 715 | |     PD1: (pd1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 716 | |     PD2: (pd2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 729 | |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 713 ~ let _ = gpio!(GPIOD, gpiod, gpioden, PD, 3, [
[INFO] [stdout] 714 |     PD0: (pd0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 729 |     PD15: (pd15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 730 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 | let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 732 | / gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 | |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 734 | |     PE1: (pe1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 735 | |     PE2: (pe2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 732 ~ let _ = gpio!(GPIOE, gpioe, gpioeen, PE, 4, [
[INFO] [stdout] 733 |     PE0: (pe0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 748 |     PE15: (pe15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 749 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 | let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 751 | / gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 | |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 753 | |     PF1: (pf1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 754 | |     PF2: (pf2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 767 | |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 751 ~ let _ = gpio!(GPIOF, gpiof, gpiofen, PF, 5, [
[INFO] [stdout] 752 |     PF0: (pf0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 767 |     PF15: (pf15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 768 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 | let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 770 | / gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 | |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 772 | |     PG1: (pg1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 773 | |     PG2: (pg2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 770 ~ let _ = gpio!(GPIOG, gpiog, gpiogen, PG, 6, [
[INFO] [stdout] 771 |     PG0: (pg0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 786 |     PG15: (pg15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 787 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 | let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 789 | / gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 | |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 791 | |     PH1: (ph1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 792 | |     PH2: (ph2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 805 | |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 789 ~ let _ = gpio!(GPIOH, gpioh, gpiohen, PH, 7, [
[INFO] [stdout] 790 |     PH0: (ph0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 805 |     PH15: (ph15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 806 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 | let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 808 | / gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 | |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 810 | |     PI1: (pi1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 811 | |     PI2: (pi2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 824 | |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 808 ~ let _ = gpio!(GPIOI, gpioi, gpioien, PI, 8, [
[INFO] [stdout] 809 |     PI0: (pi0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 824 |     PI15: (pi15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 825 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 | let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 827 | / gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 | |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 829 | |     PJ1: (pj1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 830 | |     PJ2: (pj2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 843 | |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 827 ~ let _ = gpio!(GPIOJ, gpioj, gpiojen, PJ, 9, [
[INFO] [stdout] 828 |     PJ0: (pj0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 843 |     PJ15: (pj15, 15, Input<Floating>, exticr4),
[INFO] [stdout] 844 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:259:25
[INFO] [stdout]     |
[INFO] [stdout] 259 | /                         &(*$GPIOX::ptr()).afrl.modify(|r, w| {
[INFO] [stdout] 260 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 261 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /                         &(*$GPIOX::ptr()).afrh.modify(|r, w| {
[INFO] [stdout] 265 | |                             w.bits((r.bits() & !(0b1111 << offset2)) | (mode << offset2))
[INFO] [stdout] 266 | |                         });
[INFO] [stdout]     | |__________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | /                     &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 269 | |                         w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 270 | |                     });
[INFO] [stdout]     | |______________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:384:29
[INFO] [stdout]     |
[INFO] [stdout] 384 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 385 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 386 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:381:29
[INFO] [stdout]     |
[INFO] [stdout] 381 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 382 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 383 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:399:29
[INFO] [stdout]     |
[INFO] [stdout] 399 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 400 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 401 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:396:29
[INFO] [stdout]     |
[INFO] [stdout] 396 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 397 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b10 << offset))
[INFO] [stdout] 398 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:414:29
[INFO] [stdout]     |
[INFO] [stdout] 414 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 415 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 416 | |                             }
[INFO] [stdout] 417 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:411:29
[INFO] [stdout]     |
[INFO] [stdout] 411 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 412 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 413 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:432:29
[INFO] [stdout]     |
[INFO] [stdout] 432 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 433 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 434 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:426:29
[INFO] [stdout]     |
[INFO] [stdout] 426 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 427 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 428 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:429:29
[INFO] [stdout]     |
[INFO] [stdout] 429 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 430 | |                                 w.bits(r.bits() | (0b1 << $i))
[INFO] [stdout] 431 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:451:29
[INFO] [stdout]     |
[INFO] [stdout] 451 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 452 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b01 << offset))
[INFO] [stdout] 453 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 446 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 447 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:448:29
[INFO] [stdout]     |
[INFO] [stdout] 448 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 449 | |                                 w.bits(r.bits() & !(0b1 << $i))
[INFO] [stdout] 450 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:467:29
[INFO] [stdout]     |
[INFO] [stdout] 467 | /                             &(*$GPIOX::ptr()).moder.modify(|r, w| {
[INFO] [stdout] 468 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b11 << offset))
[INFO] [stdout] 469 | |                             }
[INFO] [stdout] 470 | |                         )};
[INFO] [stdout]     | |_________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:464:29
[INFO] [stdout]     |
[INFO] [stdout] 464 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 465 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (0b00 << offset))
[INFO] [stdout] 466 | |                             });
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 | let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout]     | +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 483 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 484 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:497:29
[INFO] [stdout]     |
[INFO] [stdout] 497 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 498 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 499 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:510:29
[INFO] [stdout]     |
[INFO] [stdout] 510 | /                             &(*$GPIOX::ptr()).ospeedr.modify(|r, w| {
[INFO] [stdout] 511 | |                                 w.bits((r.bits() & !(0b11 << offset)) | ((speed as u32) << offset))
[INFO] [stdout] 512 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | /                             &(*$GPIOX::ptr()).pupdr.modify(|r, w| {
[INFO] [stdout] 524 | |                                 w.bits((r.bits() & !(0b11 << offset)) | (value << offset))
[INFO] [stdout] 525 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/gpio.rs:537:29
[INFO] [stdout]     |
[INFO] [stdout] 537 | /                             &(*$GPIOX::ptr()).otyper.modify(|r, w| {
[INFO] [stdout] 538 | |                                 w.bits(r.bits() | (1 << offset))
[INFO] [stdout] 539 | |                             })
[INFO] [stdout]     | |______________________________^ the borrow produces a value
[INFO] [stdout] ...
[INFO] [stdout] 846 | / gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 | |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] 848 | |     PK1: (pk1, 1, Input<Floating>, exticr1),
[INFO] [stdout] 849 | |     PK2: (pk2, 2, Input<Floating>, exticr1),
[INFO] [stdout] ...   |
[INFO] [stdout] 854 | |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 | | ]);
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `gpio` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 846 ~ let _ = gpio!(GPIOK, gpiok, gpioken, PK, 10, [
[INFO] [stdout] 847 |     PK0: (pk0, 0, Input<Floating>, exticr1),
[INFO] [stdout] ...
[INFO] [stdout] 854 |     PK7: (pk7, 7, Input<Floating>, exticr2),
[INFO] [stdout] 855 ~ ]);;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial.rs:456:34
[INFO] [stdout]     |
[INFO] [stdout] 456 |                           unsafe { ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 525 | / halUsart! {
[INFO] [stdout] 526 | |     USART1: (usart1, apb2enr, usart1en, pclk2),
[INFO] [stdout] 527 | |     USART2: (usart2, apb1enr, usart2en, pclk1),
[INFO] [stdout] 528 | |     USART6: (usart6, apb2enr, usart6en, pclk2),
[INFO] [stdout] 529 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: `#[deny(invalid_reference_casting)]` on by default
[INFO] [stdout]     = note: this error originates in the macro `halUsartImpl` which comes from the expansion of the macro `halUsart` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial.rs:456:34
[INFO] [stdout]     |
[INFO] [stdout] 456 |                           unsafe { ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 532 | / halUsart! {
[INFO] [stdout] 533 | |     USART3: (usart3, apb1enr, usart3en, pclk1),
[INFO] [stdout] 534 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: this error originates in the macro `halUsartImpl` which comes from the expansion of the macro `halUsart` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial.rs:456:34
[INFO] [stdout]     |
[INFO] [stdout] 456 |                           unsafe { ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 536 | / halUart! {
[INFO] [stdout] 537 | |     UART4: (uart4, apb1enr, uart4en, pclk1),
[INFO] [stdout] 538 | |     UART5: (uart5, apb1enr, uart5en, pclk1),
[INFO] [stdout] 539 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: this error originates in the macro `halUsartImpl` which comes from the expansion of the macro `halUart` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial.rs:456:34
[INFO] [stdout]     |
[INFO] [stdout] 456 |                           unsafe { ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 | / halUsart! {
[INFO] [stdout] 542 | |     UART7: (uart7, apb1enr, uart7en, pclk1),
[INFO] [stdout] 543 | |     UART8: (uart8, apb1enr, uart8en, pclk1),
[INFO] [stdout] 544 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: this error originates in the macro `halUsartImpl` which comes from the expansion of the macro `halUsart` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/spi.rs:544:22
[INFO] [stdout]     |
[INFO] [stdout] 544 |             unsafe { ptr::write_volatile(&self.spi.dr as *const _ as *mut u8, byte) }
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32f7x7-hal` (lib) due to 5 previous errors; 306 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "4eb078313a55301535002d95997e5713e7c45b91673db29b79688f48cfeb7e93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4eb078313a55301535002d95997e5713e7c45b91673db29b79688f48cfeb7e93", kill_on_drop: false }`
[INFO] [stdout] 4eb078313a55301535002d95997e5713e7c45b91673db29b79688f48cfeb7e93
