[INFO] fetching crate stm32-hal2 0.2.11...
[INFO] testing stm32-hal2-0.2.11 against 1.54.0 for beta-1.55-1
[INFO] extracting crate stm32-hal2 0.2.11 into /workspace/builds/worker-2/source
[INFO] validating manifest of crates.io crate stm32-hal2 0.2.11 on toolchain 1.54.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate stm32-hal2 0.2.11
[INFO] finished tweaking crates.io crate stm32-hal2 0.2.11
[INFO] tweaked toml for crates.io crate stm32-hal2 0.2.11 written to /workspace/builds/worker-2/source/Cargo.toml
[INFO] crate crates.io crate stm32-hal2 0.2.11 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 18d15beedc066261966222bd9d33bdc3a5a6eabd764d6514bf755ad60532519b
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "18d15beedc066261966222bd9d33bdc3a5a6eabd764d6514bf755ad60532519b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "18d15beedc066261966222bd9d33bdc3a5a6eabd764d6514bf755ad60532519b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "18d15beedc066261966222bd9d33bdc3a5a6eabd764d6514bf755ad60532519b", kill_on_drop: false }`
[INFO] [stdout] 18d15beedc066261966222bd9d33bdc3a5a6eabd764d6514bf755ad60532519b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e0cb0141064514c2d8787bc904f4eab84107dc75ffa23f2648ef3fae7de2689b
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "e0cb0141064514c2d8787bc904f4eab84107dc75ffa23f2648ef3fae7de2689b", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling embedded-hal v0.2.5
[INFO] [stderr]    Compiling cast v0.2.3
[INFO] [stderr]    Compiling cortex-m v0.7.3
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling chrono v0.4.19
[INFO] [stderr]    Compiling stm32-hal2 v0.2.11 (/opt/rustwide/workdir)
[INFO] [stdout] error: This crate requires an MCU-specifying feature to be enabled. eg `l552`.
[INFO] [stdout]    --> src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | compile_error!("This crate requires an MCU-specifying feature to be enabled. eg `l552`.");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::clocks::Clocks`, `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/adc.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 12 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]  --> src/crc.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::pac::{crc, CRC, RCC};
[INFO] [stdout]   |            ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/dac.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/dma.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]   --> src/dma.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::pac::dma1 as dma;
[INFO] [stdout]    |            ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]   --> src/flash.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pac::FLASH;
[INFO] [stdout]    |            ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/gpio.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pac::{self, EXTI, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]   --> src/gpio.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::pac::SYSCFG;
[INFO] [stdout]    |            ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::clocks::Clocks`, `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/i2c.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 14 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::clocks::Clocks`, `crate::pac`
[INFO] [stdout]  --> src/low_power.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     clocks::Clocks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 6 |     pac::{PWR, RCC},
[INFO] [stdout]   |     ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::clocks::Clocks`, `crate::pac`
[INFO] [stdout]  --> src/qspi.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     clocks::Clocks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 6 |     pac::{QUADSPI, RCC},
[INFO] [stdout]   |     ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]  --> src/rtc.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::pac::{EXTI, PWR, RCC, RTC};
[INFO] [stdout]   |            ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/spi.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::clocks::Clocks`, `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/timer.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 23 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::clocks::Clocks`, `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/usart.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 12 |     pac::{self, RCC},
[INFO] [stdout]    |     ^^^   ^^^^ no `pac` in the root
[INFO] [stdout]    |     |
[INFO] [stdout]    |     could not find `pac` in the crate root
[INFO] [stdout]    |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]   --> src/dac.rs:21:20
[INFO] [stdout]    |
[INFO] [stdout] 21 |         use crate::pac::dac as dac_p;
[INFO] [stdout]    |                    ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/i2c.rs:399:27
[INFO] [stdout]     |
[INFO] [stdout] 399 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/i2c.rs:483:27
[INFO] [stdout]     |
[INFO] [stdout] 483 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/spi.rs:540:27
[INFO] [stdout]     |
[INFO] [stdout] 540 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/spi.rs:636:27
[INFO] [stdout]     |
[INFO] [stdout] 636 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/spi.rs:707:27
[INFO] [stdout]     |
[INFO] [stdout] 707 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/usart.rs:397:27
[INFO] [stdout]     |
[INFO] [stdout] 397 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/usart.rs:491:27
[INFO] [stdout]     |
[INFO] [stdout] 491 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `pac`
[INFO] [stdout]    --> src/lib.rs:477:34
[INFO] [stdout]     |
[INFO] [stdout] 477 |         let dbgmcu = unsafe { &(*pac::DBGMCU::ptr()) };
[INFO] [stdout]     |                                  ^^^ use of undeclared crate or module `pac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `pac`
[INFO] [stdout]    --> src/lib.rs:486:31
[INFO] [stdout]     |
[INFO] [stdout] 486 |         let rcc = unsafe { &(*pac::RCC::ptr()) };
[INFO] [stdout]     |                               ^^^ use of undeclared crate or module `pac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `asm`, `interrupt::free`
[INFO] [stdout]  --> src/adc.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use cortex_m::{asm, interrupt::free};
[INFO] [stdout]   |                ^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ops::Deref`, `ptr`
[INFO] [stdout]  --> src/adc.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::{ops::Deref, ptr};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rcc_en_reset`
[INFO] [stdout]   --> src/adc.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     rcc_en_reset,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `paste::paste`
[INFO] [stdout]   --> src/adc.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use paste::paste;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChannelCfg`, `DmaChannel`, `DmaInput`, `Dma`, `self`
[INFO] [stdout]   --> src/adc.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::dma::{self, ChannelCfg, Dma, DmaChannel, DmaInput};
[INFO] [stdout]    |                  ^^^^  ^^^^^^^^^^  ^^^  ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition
[INFO] [stdout]     --> src/adc.rs:237:1
[INFO] [stdout]      |
[INFO] [stdout] 237  | / macro_rules! hal {
[INFO] [stdout] 238  | |     ($ADC:ident, $ADC_COMMON:ident, $adc:ident, $rcc_num:tt) => {
[INFO] [stdout] 239  | |         impl Adc<pac::$ADC> {
[INFO] [stdout] 240  | |             paste! {
[INFO] [stdout] ...    |
[INFO] [stdout] 1101 | |     }
[INFO] [stdout] 1102 | | }
[INFO] [stdout]      | |_^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::convert::Infallible`
[INFO] [stdout]  --> src/gpio.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::convert::Infallible;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DmaInput`
[INFO] [stdout]   --> src/i2c.rs:30:41
[INFO] [stdout]    |
[INFO] [stdout] 30 | use crate::dma::{self, Dma, DmaChannel, DmaInput};
[INFO] [stdout]    |                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_if::cfg_if`
[INFO] [stdout]   --> src/low_power.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use cfg_if::cfg_if;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_if::cfg_if`
[INFO] [stdout]   --> src/qspi.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use cfg_if::cfg_if;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ordering`, `self`
[INFO] [stdout]  --> src/spi.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 |     sync::atomic::{self, Ordering},
[INFO] [stdout]   |                    ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nb::block`
[INFO] [stdout]   --> src/spi.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use nb::block;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DmaInput`
[INFO] [stdout]   --> src/spi.rs:34:41
[INFO] [stdout]    |
[INFO] [stdout] 34 | use crate::dma::{self, Dma, DmaChannel, DmaInput};
[INFO] [stdout]    |                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DmaInput`
[INFO] [stdout]   --> src/usart.rs:25:41
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::dma::{self, Dma, DmaChannel, DmaInput};
[INFO] [stdout]    |                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 773 | hal!(TIM1, tim1, 2);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_pwm_output`
[INFO] [stdout]    --> src/timer.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 | /             pub fn enable_pwm_output(
[INFO] [stdout] 470 | |                 &mut self,
[INFO] [stdout] 471 | |                 channel: TimChannel,
[INFO] [stdout] 472 | |                 compare: OutputCompare,
[INFO] [stdout] 473 | |                 dir: CountDir,
[INFO] [stdout] 474 | |                 duty: f32,
[INFO] [stdout] 475 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 782 |   pwm_features!(TIM1, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `_enable_pwm_input`
[INFO] [stdout]    --> src/timer.rs:487:13
[INFO] [stdout]     |
[INFO] [stdout] 487 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 488 | |                 &mut self,
[INFO] [stdout] 489 | |                 channel: TimChannel,
[INFO] [stdout] 490 | |                 compare: OutputCompare,
[INFO] [stdout] 491 | |                 dir: CountDir,
[INFO] [stdout] 492 | |                 duty: f32,
[INFO] [stdout] 493 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 782 |   pwm_features!(TIM1, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_output_compare`
[INFO] [stdout]    --> src/timer.rs:534:13
[INFO] [stdout]     |
[INFO] [stdout] 534 |             pub fn set_output_compare(&mut self, channel: TimChannel, mode: OutputCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_output_compare`
[INFO] [stdout]     |             other definition for `set_output_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_duty`
[INFO] [stdout]    --> src/timer.rs:579:13
[INFO] [stdout]     |
[INFO] [stdout] 579 |             pub fn get_duty(&self, channel: TimChannel) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_duty`
[INFO] [stdout]     |             other definition for `get_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_duty`
[INFO] [stdout]    --> src/timer.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |             pub fn set_duty(&mut self, channel: TimChannel, duty: $res) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_duty`
[INFO] [stdout]     |             other definition for `set_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             pub fn get_max_duty(&self) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_max_duty`
[INFO] [stdout]     |             other definition for `get_max_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_alignment`
[INFO] [stdout]    --> src/timer.rs:662:13
[INFO] [stdout]     |
[INFO] [stdout] 662 |             pub fn set_alignment(&mut self, alignment: Alignment) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_alignment`
[INFO] [stdout]     |             other definition for `set_alignment`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_polarity`
[INFO] [stdout]    --> src/timer.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |             pub fn set_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_polarity`
[INFO] [stdout]     |             other definition for `set_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:683:13
[INFO] [stdout]     |
[INFO] [stdout] 683 |             pub fn set_complementary_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_complementary_polarity`
[INFO] [stdout]     |             other definition for `set_complementary_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:692:13
[INFO] [stdout]     |
[INFO] [stdout] 692 |             pub fn disable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable_capture_compare`
[INFO] [stdout]     |             other definition for `disable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:702:13
[INFO] [stdout]     |
[INFO] [stdout] 702 |             pub fn enable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_capture_compare`
[INFO] [stdout]     |             other definition for `enable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_capture_compare`
[INFO] [stdout]    --> src/timer.rs:712:13
[INFO] [stdout]     |
[INFO] [stdout] 712 |             pub fn set_capture_compare(&mut self, channel: TimChannel, mode: CaptureCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_capture_compare`
[INFO] [stdout]     |             other definition for `set_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload_preload`
[INFO] [stdout]    --> src/timer.rs:735:13
[INFO] [stdout]     |
[INFO] [stdout] 735 |             pub fn set_auto_reload_preload(&mut self, mode: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload_preload`
[INFO] [stdout]     |             other definition for `set_auto_reload_preload`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_preload`
[INFO] [stdout]    --> src/timer.rs:752:13
[INFO] [stdout]     |
[INFO] [stdout] 752 |             pub fn set_preload(&mut self, channel: TimChannel, value: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_preload`
[INFO] [stdout]     |             other definition for `set_preload`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_pwm_output`
[INFO] [stdout]    --> src/timer.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 | /             pub fn enable_pwm_output(
[INFO] [stdout] 470 | |                 &mut self,
[INFO] [stdout] 471 | |                 channel: TimChannel,
[INFO] [stdout] 472 | |                 compare: OutputCompare,
[INFO] [stdout] 473 | |                 dir: CountDir,
[INFO] [stdout] 474 | |                 duty: f32,
[INFO] [stdout] 475 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 782 |   pwm_features!(TIM1, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `_enable_pwm_input`
[INFO] [stdout]    --> src/timer.rs:487:13
[INFO] [stdout]     |
[INFO] [stdout] 487 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 488 | |                 &mut self,
[INFO] [stdout] 489 | |                 channel: TimChannel,
[INFO] [stdout] 490 | |                 compare: OutputCompare,
[INFO] [stdout] 491 | |                 dir: CountDir,
[INFO] [stdout] 492 | |                 duty: f32,
[INFO] [stdout] 493 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 782 |   pwm_features!(TIM1, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_output_compare`
[INFO] [stdout]    --> src/timer.rs:534:13
[INFO] [stdout]     |
[INFO] [stdout] 534 |             pub fn set_output_compare(&mut self, channel: TimChannel, mode: OutputCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_output_compare`
[INFO] [stdout]     |             other definition for `set_output_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_duty`
[INFO] [stdout]    --> src/timer.rs:579:13
[INFO] [stdout]     |
[INFO] [stdout] 579 |             pub fn get_duty(&self, channel: TimChannel) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_duty`
[INFO] [stdout]     |             other definition for `get_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_duty`
[INFO] [stdout]    --> src/timer.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |             pub fn set_duty(&mut self, channel: TimChannel, duty: $res) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_duty`
[INFO] [stdout]     |             other definition for `set_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             pub fn get_max_duty(&self) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_max_duty`
[INFO] [stdout]     |             other definition for `get_max_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_alignment`
[INFO] [stdout]    --> src/timer.rs:662:13
[INFO] [stdout]     |
[INFO] [stdout] 662 |             pub fn set_alignment(&mut self, alignment: Alignment) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_alignment`
[INFO] [stdout]     |             other definition for `set_alignment`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_polarity`
[INFO] [stdout]    --> src/timer.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |             pub fn set_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_polarity`
[INFO] [stdout]     |             other definition for `set_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:683:13
[INFO] [stdout]     |
[INFO] [stdout] 683 |             pub fn set_complementary_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_complementary_polarity`
[INFO] [stdout]     |             other definition for `set_complementary_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:692:13
[INFO] [stdout]     |
[INFO] [stdout] 692 |             pub fn disable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable_capture_compare`
[INFO] [stdout]     |             other definition for `disable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:702:13
[INFO] [stdout]     |
[INFO] [stdout] 702 |             pub fn enable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_capture_compare`
[INFO] [stdout]     |             other definition for `enable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_capture_compare`
[INFO] [stdout]    --> src/timer.rs:712:13
[INFO] [stdout]     |
[INFO] [stdout] 712 |             pub fn set_capture_compare(&mut self, channel: TimChannel, mode: CaptureCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_capture_compare`
[INFO] [stdout]     |             other definition for `set_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload_preload`
[INFO] [stdout]    --> src/timer.rs:735:13
[INFO] [stdout]     |
[INFO] [stdout] 735 |             pub fn set_auto_reload_preload(&mut self, mode: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload_preload`
[INFO] [stdout]     |             other definition for `set_auto_reload_preload`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_preload`
[INFO] [stdout]    --> src/timer.rs:752:13
[INFO] [stdout]     |
[INFO] [stdout] 752 |             pub fn set_preload(&mut self, channel: TimChannel, value: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_preload`
[INFO] [stdout]     |             other definition for `set_preload`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_pwm_output`
[INFO] [stdout]    --> src/timer.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 | /             pub fn enable_pwm_output(
[INFO] [stdout] 470 | |                 &mut self,
[INFO] [stdout] 471 | |                 channel: TimChannel,
[INFO] [stdout] 472 | |                 compare: OutputCompare,
[INFO] [stdout] 473 | |                 dir: CountDir,
[INFO] [stdout] 474 | |                 duty: f32,
[INFO] [stdout] 475 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 782 |   pwm_features!(TIM1, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `_enable_pwm_input`
[INFO] [stdout]    --> src/timer.rs:487:13
[INFO] [stdout]     |
[INFO] [stdout] 487 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 488 | |                 &mut self,
[INFO] [stdout] 489 | |                 channel: TimChannel,
[INFO] [stdout] 490 | |                 compare: OutputCompare,
[INFO] [stdout] 491 | |                 dir: CountDir,
[INFO] [stdout] 492 | |                 duty: f32,
[INFO] [stdout] 493 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 782 |   pwm_features!(TIM1, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_output_compare`
[INFO] [stdout]    --> src/timer.rs:534:13
[INFO] [stdout]     |
[INFO] [stdout] 534 |             pub fn set_output_compare(&mut self, channel: TimChannel, mode: OutputCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_output_compare`
[INFO] [stdout]     |             other definition for `set_output_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_duty`
[INFO] [stdout]    --> src/timer.rs:579:13
[INFO] [stdout]     |
[INFO] [stdout] 579 |             pub fn get_duty(&self, channel: TimChannel) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_duty`
[INFO] [stdout]     |             other definition for `get_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_duty`
[INFO] [stdout]    --> src/timer.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |             pub fn set_duty(&mut self, channel: TimChannel, duty: $res) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_duty`
[INFO] [stdout]     |             other definition for `set_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             pub fn get_max_duty(&self) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_max_duty`
[INFO] [stdout]     |             other definition for `get_max_duty`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_alignment`
[INFO] [stdout]    --> src/timer.rs:662:13
[INFO] [stdout]     |
[INFO] [stdout] 662 |             pub fn set_alignment(&mut self, alignment: Alignment) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_alignment`
[INFO] [stdout]     |             other definition for `set_alignment`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_polarity`
[INFO] [stdout]    --> src/timer.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |             pub fn set_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_polarity`
[INFO] [stdout]     |             other definition for `set_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:683:13
[INFO] [stdout]     |
[INFO] [stdout] 683 |             pub fn set_complementary_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_complementary_polarity`
[INFO] [stdout]     |             other definition for `set_complementary_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:692:13
[INFO] [stdout]     |
[INFO] [stdout] 692 |             pub fn disable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable_capture_compare`
[INFO] [stdout]     |             other definition for `disable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:702:13
[INFO] [stdout]     |
[INFO] [stdout] 702 |             pub fn enable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_capture_compare`
[INFO] [stdout]     |             other definition for `enable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_capture_compare`
[INFO] [stdout]    --> src/timer.rs:712:13
[INFO] [stdout]     |
[INFO] [stdout] 712 |             pub fn set_capture_compare(&mut self, channel: TimChannel, mode: CaptureCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_capture_compare`
[INFO] [stdout]     |             other definition for `set_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload_preload`
[INFO] [stdout]    --> src/timer.rs:735:13
[INFO] [stdout]     |
[INFO] [stdout] 735 |             pub fn set_auto_reload_preload(&mut self, mode: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload_preload`
[INFO] [stdout]     |             other definition for `set_auto_reload_preload`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_preload`
[INFO] [stdout]    --> src/timer.rs:752:13
[INFO] [stdout]     |
[INFO] [stdout] 752 |             pub fn set_preload(&mut self, channel: TimChannel, value: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_preload`
[INFO] [stdout]     |             other definition for `set_preload`
[INFO] [stdout] ...
[INFO] [stdout] 782 | pwm_features!(TIM1, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 792 |         hal!(TIM2, tim2, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_pwm_output`
[INFO] [stdout]    --> src/timer.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 | /             pub fn enable_pwm_output(
[INFO] [stdout] 470 | |                 &mut self,
[INFO] [stdout] 471 | |                 channel: TimChannel,
[INFO] [stdout] 472 | |                 compare: OutputCompare,
[INFO] [stdout] 473 | |                 dir: CountDir,
[INFO] [stdout] 474 | |                 duty: f32,
[INFO] [stdout] 475 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 808 |   pwm_features!(TIM2, u32);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `_enable_pwm_input`
[INFO] [stdout]    --> src/timer.rs:487:13
[INFO] [stdout]     |
[INFO] [stdout] 487 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 488 | |                 &mut self,
[INFO] [stdout] 489 | |                 channel: TimChannel,
[INFO] [stdout] 490 | |                 compare: OutputCompare,
[INFO] [stdout] 491 | |                 dir: CountDir,
[INFO] [stdout] 492 | |                 duty: f32,
[INFO] [stdout] 493 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 808 |   pwm_features!(TIM2, u32);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_output_compare`
[INFO] [stdout]    --> src/timer.rs:534:13
[INFO] [stdout]     |
[INFO] [stdout] 534 |             pub fn set_output_compare(&mut self, channel: TimChannel, mode: OutputCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_output_compare`
[INFO] [stdout]     |             other definition for `set_output_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_duty`
[INFO] [stdout]    --> src/timer.rs:579:13
[INFO] [stdout]     |
[INFO] [stdout] 579 |             pub fn get_duty(&self, channel: TimChannel) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_duty`
[INFO] [stdout]     |             other definition for `get_duty`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_duty`
[INFO] [stdout]    --> src/timer.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |             pub fn set_duty(&mut self, channel: TimChannel, duty: $res) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_duty`
[INFO] [stdout]     |             other definition for `set_duty`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             pub fn get_max_duty(&self) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_max_duty`
[INFO] [stdout]     |             other definition for `get_max_duty`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_alignment`
[INFO] [stdout]    --> src/timer.rs:662:13
[INFO] [stdout]     |
[INFO] [stdout] 662 |             pub fn set_alignment(&mut self, alignment: Alignment) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_alignment`
[INFO] [stdout]     |             other definition for `set_alignment`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_polarity`
[INFO] [stdout]    --> src/timer.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |             pub fn set_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_polarity`
[INFO] [stdout]     |             other definition for `set_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:683:13
[INFO] [stdout]     |
[INFO] [stdout] 683 |             pub fn set_complementary_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_complementary_polarity`
[INFO] [stdout]     |             other definition for `set_complementary_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:692:13
[INFO] [stdout]     |
[INFO] [stdout] 692 |             pub fn disable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable_capture_compare`
[INFO] [stdout]     |             other definition for `disable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:702:13
[INFO] [stdout]     |
[INFO] [stdout] 702 |             pub fn enable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_capture_compare`
[INFO] [stdout]     |             other definition for `enable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_capture_compare`
[INFO] [stdout]    --> src/timer.rs:712:13
[INFO] [stdout]     |
[INFO] [stdout] 712 |             pub fn set_capture_compare(&mut self, channel: TimChannel, mode: CaptureCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_capture_compare`
[INFO] [stdout]     |             other definition for `set_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload_preload`
[INFO] [stdout]    --> src/timer.rs:735:13
[INFO] [stdout]     |
[INFO] [stdout] 735 |             pub fn set_auto_reload_preload(&mut self, mode: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload_preload`
[INFO] [stdout]     |             other definition for `set_auto_reload_preload`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_preload`
[INFO] [stdout]    --> src/timer.rs:752:13
[INFO] [stdout]     |
[INFO] [stdout] 752 |             pub fn set_preload(&mut self, channel: TimChannel, value: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_preload`
[INFO] [stdout]     |             other definition for `set_preload`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_pwm_output`
[INFO] [stdout]    --> src/timer.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 | /             pub fn enable_pwm_output(
[INFO] [stdout] 470 | |                 &mut self,
[INFO] [stdout] 471 | |                 channel: TimChannel,
[INFO] [stdout] 472 | |                 compare: OutputCompare,
[INFO] [stdout] 473 | |                 dir: CountDir,
[INFO] [stdout] 474 | |                 duty: f32,
[INFO] [stdout] 475 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 808 |   pwm_features!(TIM2, u32);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `_enable_pwm_input`
[INFO] [stdout]    --> src/timer.rs:487:13
[INFO] [stdout]     |
[INFO] [stdout] 487 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 488 | |                 &mut self,
[INFO] [stdout] 489 | |                 channel: TimChannel,
[INFO] [stdout] 490 | |                 compare: OutputCompare,
[INFO] [stdout] 491 | |                 dir: CountDir,
[INFO] [stdout] 492 | |                 duty: f32,
[INFO] [stdout] 493 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 808 |   pwm_features!(TIM2, u32);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_output_compare`
[INFO] [stdout]    --> src/timer.rs:534:13
[INFO] [stdout]     |
[INFO] [stdout] 534 |             pub fn set_output_compare(&mut self, channel: TimChannel, mode: OutputCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_output_compare`
[INFO] [stdout]     |             other definition for `set_output_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_duty`
[INFO] [stdout]    --> src/timer.rs:579:13
[INFO] [stdout]     |
[INFO] [stdout] 579 |             pub fn get_duty(&self, channel: TimChannel) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_duty`
[INFO] [stdout]     |             other definition for `get_duty`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_duty`
[INFO] [stdout]    --> src/timer.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |             pub fn set_duty(&mut self, channel: TimChannel, duty: $res) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_duty`
[INFO] [stdout]     |             other definition for `set_duty`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             pub fn get_max_duty(&self) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_max_duty`
[INFO] [stdout]     |             other definition for `get_max_duty`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_alignment`
[INFO] [stdout]    --> src/timer.rs:662:13
[INFO] [stdout]     |
[INFO] [stdout] 662 |             pub fn set_alignment(&mut self, alignment: Alignment) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_alignment`
[INFO] [stdout]     |             other definition for `set_alignment`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_polarity`
[INFO] [stdout]    --> src/timer.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |             pub fn set_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_polarity`
[INFO] [stdout]     |             other definition for `set_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:683:13
[INFO] [stdout]     |
[INFO] [stdout] 683 |             pub fn set_complementary_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_complementary_polarity`
[INFO] [stdout]     |             other definition for `set_complementary_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:692:13
[INFO] [stdout]     |
[INFO] [stdout] 692 |             pub fn disable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable_capture_compare`
[INFO] [stdout]     |             other definition for `disable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:702:13
[INFO] [stdout]     |
[INFO] [stdout] 702 |             pub fn enable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_capture_compare`
[INFO] [stdout]     |             other definition for `enable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_capture_compare`
[INFO] [stdout]    --> src/timer.rs:712:13
[INFO] [stdout]     |
[INFO] [stdout] 712 |             pub fn set_capture_compare(&mut self, channel: TimChannel, mode: CaptureCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_capture_compare`
[INFO] [stdout]     |             other definition for `set_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload_preload`
[INFO] [stdout]    --> src/timer.rs:735:13
[INFO] [stdout]     |
[INFO] [stdout] 735 |             pub fn set_auto_reload_preload(&mut self, mode: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload_preload`
[INFO] [stdout]     |             other definition for `set_auto_reload_preload`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_preload`
[INFO] [stdout]    --> src/timer.rs:752:13
[INFO] [stdout]     |
[INFO] [stdout] 752 |             pub fn set_preload(&mut self, channel: TimChannel, value: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_preload`
[INFO] [stdout]     |             other definition for `set_preload`
[INFO] [stdout] ...
[INFO] [stdout] 808 | pwm_features!(TIM2, u32);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 819 | hal!(TIM3, tim3, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_pwm_output`
[INFO] [stdout]    --> src/timer.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 | /             pub fn enable_pwm_output(
[INFO] [stdout] 470 | |                 &mut self,
[INFO] [stdout] 471 | |                 channel: TimChannel,
[INFO] [stdout] 472 | |                 compare: OutputCompare,
[INFO] [stdout] 473 | |                 dir: CountDir,
[INFO] [stdout] 474 | |                 duty: f32,
[INFO] [stdout] 475 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 830 |   pwm_features!(TIM3, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `_enable_pwm_input`
[INFO] [stdout]    --> src/timer.rs:487:13
[INFO] [stdout]     |
[INFO] [stdout] 487 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 488 | |                 &mut self,
[INFO] [stdout] 489 | |                 channel: TimChannel,
[INFO] [stdout] 490 | |                 compare: OutputCompare,
[INFO] [stdout] 491 | |                 dir: CountDir,
[INFO] [stdout] 492 | |                 duty: f32,
[INFO] [stdout] 493 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 830 |   pwm_features!(TIM3, u16);
[INFO] [stdout]     |   ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_output_compare`
[INFO] [stdout]    --> src/timer.rs:534:13
[INFO] [stdout]     |
[INFO] [stdout] 534 |             pub fn set_output_compare(&mut self, channel: TimChannel, mode: OutputCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_output_compare`
[INFO] [stdout]     |             other definition for `set_output_compare`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_duty`
[INFO] [stdout]    --> src/timer.rs:579:13
[INFO] [stdout]     |
[INFO] [stdout] 579 |             pub fn get_duty(&self, channel: TimChannel) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_duty`
[INFO] [stdout]     |             other definition for `get_duty`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_duty`
[INFO] [stdout]    --> src/timer.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |             pub fn set_duty(&mut self, channel: TimChannel, duty: $res) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_duty`
[INFO] [stdout]     |             other definition for `set_duty`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             pub fn get_max_duty(&self) -> $res {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `get_max_duty`
[INFO] [stdout]     |             other definition for `get_max_duty`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_alignment`
[INFO] [stdout]    --> src/timer.rs:662:13
[INFO] [stdout]     |
[INFO] [stdout] 662 |             pub fn set_alignment(&mut self, alignment: Alignment) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_alignment`
[INFO] [stdout]     |             other definition for `set_alignment`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_polarity`
[INFO] [stdout]    --> src/timer.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |             pub fn set_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_polarity`
[INFO] [stdout]     |             other definition for `set_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:683:13
[INFO] [stdout]     |
[INFO] [stdout] 683 |             pub fn set_complementary_polarity(&mut self, channel: TimChannel, polarity: Polarity) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_complementary_polarity`
[INFO] [stdout]     |             other definition for `set_complementary_polarity`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:692:13
[INFO] [stdout]     |
[INFO] [stdout] 692 |             pub fn disable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable_capture_compare`
[INFO] [stdout]     |             other definition for `disable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_capture_compare`
[INFO] [stdout]    --> src/timer.rs:702:13
[INFO] [stdout]     |
[INFO] [stdout] 702 |             pub fn enable_capture_compare(&mut self, channel: TimChannel) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_capture_compare`
[INFO] [stdout]     |             other definition for `enable_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_capture_compare`
[INFO] [stdout]    --> src/timer.rs:712:13
[INFO] [stdout]     |
[INFO] [stdout] 712 |             pub fn set_capture_compare(&mut self, channel: TimChannel, mode: CaptureCompare) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_capture_compare`
[INFO] [stdout]     |             other definition for `set_capture_compare`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload_preload`
[INFO] [stdout]    --> src/timer.rs:735:13
[INFO] [stdout]     |
[INFO] [stdout] 735 |             pub fn set_auto_reload_preload(&mut self, mode: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload_preload`
[INFO] [stdout]     |             other definition for `set_auto_reload_preload`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_preload`
[INFO] [stdout]    --> src/timer.rs:752:13
[INFO] [stdout]     |
[INFO] [stdout] 752 |             pub fn set_preload(&mut self, channel: TimChannel, value: bool) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_preload`
[INFO] [stdout]     |             other definition for `set_preload`
[INFO] [stdout] ...
[INFO] [stdout] 830 | pwm_features!(TIM3, u16);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `pwm_features` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 849 |         hal!(TIM4, tim4, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 908 |         hal!(TIM6, tim6, 1);
[INFO] [stdout]     |         -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 924 | hal!(TIM7, tim7, 1);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 946 | hal!(TIM15, tim15, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable_interrupt`
[INFO] [stdout]    --> src/timer.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |             pub fn enable_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable_interrupt`
[INFO] [stdout]     |             other definition for `enable_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |             pub fn clear_interrupt(&mut self, interrupt: TimerInterrupt) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `clear_interrupt`
[INFO] [stdout]     |             other definition for `clear_interrupt`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `enable`
[INFO] [stdout]    --> src/timer.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             pub fn enable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `enable`
[INFO] [stdout]     |             other definition for `enable`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `disable`
[INFO] [stdout]    --> src/timer.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             pub fn disable(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `disable`
[INFO] [stdout]     |             other definition for `disable`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `is_enabled`
[INFO] [stdout]    --> src/timer.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `is_enabled`
[INFO] [stdout]     |             other definition for `is_enabled`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_freq`
[INFO] [stdout]    --> src/timer.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |             pub fn set_freq(&mut self, freq: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_freq`
[INFO] [stdout]     |             other definition for `set_freq`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_auto_reload`
[INFO] [stdout]    --> src/timer.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             pub fn set_auto_reload(&mut self, arr: u32) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_auto_reload`
[INFO] [stdout]     |             other definition for `set_auto_reload`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `set_prescaler`
[INFO] [stdout]    --> src/timer.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             pub fn set_prescaler(&mut self, psc: u16) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_prescaler`
[INFO] [stdout]     |             other definition for `set_prescaler`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             pub fn reset_countdown(&mut self) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `reset_countdown`
[INFO] [stdout]     |             other definition for `reset_countdown`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0592]: duplicate definitions with name `countdown`
[INFO] [stdout]    --> src/timer.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |             pub fn countdown(&self) -> u32 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `countdown`
[INFO] [stdout]     |             other definition for `countdown`
[INFO] [stdout] ...
[INFO] [stdout] 949 | hal!(TIM16, tim16, 2);
[INFO] [stdout]     | ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 470 previous errors; 14 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0592.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32-hal2`
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `Command { std: "docker" "inspect" "e0cb0141064514c2d8787bc904f4eab84107dc75ffa23f2648ef3fae7de2689b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e0cb0141064514c2d8787bc904f4eab84107dc75ffa23f2648ef3fae7de2689b", kill_on_drop: false }`
[INFO] [stdout] e0cb0141064514c2d8787bc904f4eab84107dc75ffa23f2648ef3fae7de2689b
