[INFO] fetching crate stm32-hal2 1.3.0...
[INFO] checking stm32-hal2-1.3.0 against 1.55.0 for beta-1.56-3
[INFO] extracting crate stm32-hal2 1.3.0 into /workspace/builds/worker-5/source
[INFO] validating manifest of crates.io crate stm32-hal2 1.3.0 on toolchain 1.55.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.55.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate stm32-hal2 1.3.0
[INFO] finished tweaking crates.io crate stm32-hal2 1.3.0
[INFO] tweaked toml for crates.io crate stm32-hal2 1.3.0 written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] crate crates.io crate stm32-hal2 1.3.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.55.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-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+1.55.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6daf35e66afa2cf660c4021e288ff846b3fda7f40fccdb379a8c693d3419116b
[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" "6daf35e66afa2cf660c4021e288ff846b3fda7f40fccdb379a8c693d3419116b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6daf35e66afa2cf660c4021e288ff846b3fda7f40fccdb379a8c693d3419116b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6daf35e66afa2cf660c4021e288ff846b3fda7f40fccdb379a8c693d3419116b", kill_on_drop: false }`
[INFO] [stdout] 6daf35e66afa2cf660c4021e288ff846b3fda7f40fccdb379a8c693d3419116b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+1.55.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4f064d78ac99f0f9742060dc9645403e11ecb36db14cad51333f0e2c7e66db35
[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" "4f064d78ac99f0f9742060dc9645403e11ecb36db14cad51333f0e2c7e66db35", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling paste v1.0.4
[INFO] [stderr]     Checking embedded-hal v0.2.5
[INFO] [stderr]     Checking volatile-register v0.2.0
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking cortex-m v0.7.3
[INFO] [stderr]     Checking stm32-hal2 v1.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: This crate requires an MCU-specifying feature to be enabled. eg `l552`.
[INFO] [stdout]    --> src/lib.rs:169:1
[INFO] [stdout]     |
[INFO] [stdout] 169 | compile_error!("This crate requires an MCU-specifying feature to be enabled. eg `l552`.");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: This crate requires an MCU-specifying feature to be enabled. eg `l552`.
[INFO] [stdout]    --> src/lib.rs:169:1
[INFO] [stdout]     |
[INFO] [stdout] 169 | 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:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     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/dfsdm.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     clocks::Clocks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 9 |     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/dfsdm.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::pac::dfsdm as dfsdm_p;
[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/dma.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     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:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | 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:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | 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:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     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:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | 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:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 15 |     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::clocks::Clocks`, `crate::pac`
[INFO] [stdout]   --> src/sai.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 9  |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 10 |     pac::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/sai.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pac::sai1 as sai;
[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: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::clocks::Clocks`, `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/timer.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 27 |     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[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pac::{self, rcc::RegisterBlock},
[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/util.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     clocks::Clocks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 7 |     pac::{self, rcc::RegisterBlock},
[INFO] [stdout]   |     ---   ^^^^ no `pac` in the root
[INFO] [stdout]   |     |
[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/util.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::pac::DMA1;
[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/dac.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         use crate::pac::dac as dac_p;
[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/util.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |         use crate::pac::DAC as DAC1;
[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/util.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 |         use crate::pac::ADC1;
[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/dac.rs:324:27
[INFO] [stdout]     |
[INFO] [stdout] 324 |         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/dfsdm.rs:682:27
[INFO] [stdout]     |
[INFO] [stdout] 682 |         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: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:411:31
[INFO] [stdout]     |
[INFO] [stdout] 411 |             Port::A => crate::pac::GPIOA::ptr(),
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:412:31
[INFO] [stdout]     |
[INFO] [stdout] 412 |             Port::B => crate::pac::GPIOB::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:414:31
[INFO] [stdout]     |
[INFO] [stdout] 414 |             Port::C => crate::pac::GPIOC::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:416:31
[INFO] [stdout]     |
[INFO] [stdout] 416 |             Port::D => crate::pac::GPIOD::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:425:31
[INFO] [stdout]     |
[INFO] [stdout] 425 |             Port::E => crate::pac::GPIOE::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:437:31
[INFO] [stdout]     |
[INFO] [stdout] 437 |             Port::F => crate::pac::GPIOF::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:450:31
[INFO] [stdout]     |
[INFO] [stdout] 450 |             Port::H => crate::pac::GPIOH::ptr() as _,
[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:557:27
[INFO] [stdout]     |
[INFO] [stdout] 557 |         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:624:27
[INFO] [stdout]     |
[INFO] [stdout] 624 |         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/sai.rs:849:27
[INFO] [stdout]     |
[INFO] [stdout] 849 |         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/sai.rs:938:27
[INFO] [stdout]     |
[INFO] [stdout] 938 |         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:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |         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:552:27
[INFO] [stdout]     |
[INFO] [stdout] 552 |         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:595:27
[INFO] [stdout]     |
[INFO] [stdout] 595 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[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[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/usart.rs:331:27
[INFO] [stdout]     |
[INFO] [stdout] 331 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[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[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/usart.rs:398:27
[INFO] [stdout]     |
[INFO] [stdout] 398 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::pac`, `crate::pac`
[INFO] [stdout]  --> src/dac.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     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/dfsdm.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     clocks::Clocks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 9 |     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/dfsdm.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::pac::dfsdm as dfsdm_p;
[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/dma.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     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:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | 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:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | 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:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     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:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | 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:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 15 |     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[E0433]: failed to resolve: use of undeclared crate or module `pac`
[INFO] [stdout]    --> src/lib.rs:533:34
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let dbgmcu = unsafe { &(*pac::DBGMCU::ptr()) };
[INFO] [stdout]     |                                  ^^^ use of undeclared crate or module `pac`
[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[E0433]: failed to resolve: use of undeclared crate or module `pac`
[INFO] [stdout]    --> src/lib.rs:554:31
[INFO] [stdout]     |
[INFO] [stdout] 554 |         let rcc = unsafe { &(*pac::RCC::ptr()) };
[INFO] [stdout]     |                               ^^^ use of undeclared crate or module `pac`
[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::clocks::Clocks`, `crate::pac`
[INFO] [stdout]   --> src/sai.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 9  |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 10 |     pac::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/sai.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pac::sai1 as sai;
[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: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::clocks::Clocks`, `crate::pac`, `crate::pac`
[INFO] [stdout]   --> src/timer.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     clocks::Clocks,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 27 |     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[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pac::{self, rcc::RegisterBlock},
[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/util.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     clocks::Clocks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ no `Clocks` in `clocks`
[INFO] [stdout] 7 |     pac::{self, rcc::RegisterBlock},
[INFO] [stdout]   |     ---   ^^^^ no `pac` in the root
[INFO] [stdout]   |     |
[INFO] [stdout]   |     help: a similar name exists in the module: `dac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:208:23
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn en_reset(rcc: &RegisterBlock);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pac`
[INFO] [stdout]   --> src/util.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::pac::DMA1;
[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/dac.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         use crate::pac::dac as dac_p;
[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/util.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |         use crate::pac::DAC as DAC1;
[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/util.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 |         use crate::pac::ADC1;
[INFO] [stdout]    |                    ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:223:23
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:242:23
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/dac.rs:324:27
[INFO] [stdout]     |
[INFO] [stdout] 324 |         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/dfsdm.rs:682:27
[INFO] [stdout]     |
[INFO] [stdout] 682 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:248:23
[INFO] [stdout]     |
[INFO] [stdout] 248 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:255:23
[INFO] [stdout]     |
[INFO] [stdout] 255 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:269:23
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:411:31
[INFO] [stdout]     |
[INFO] [stdout] 411 |             Port::A => crate::pac::GPIOA::ptr(),
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:412:31
[INFO] [stdout]     |
[INFO] [stdout] 412 |             Port::B => crate::pac::GPIOB::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:276:23
[INFO] [stdout]     |
[INFO] [stdout] 276 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:414:31
[INFO] [stdout]     |
[INFO] [stdout] 414 |             Port::C => crate::pac::GPIOC::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:290:23
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:416:31
[INFO] [stdout]     |
[INFO] [stdout] 416 |             Port::D => crate::pac::GPIOD::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:425:31
[INFO] [stdout]     |
[INFO] [stdout] 425 |             Port::E => crate::pac::GPIOE::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:310:23
[INFO] [stdout]     |
[INFO] [stdout] 310 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:437:31
[INFO] [stdout]     |
[INFO] [stdout] 437 |             Port::F => crate::pac::GPIOF::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:325:23
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pac` in the crate root
[INFO] [stdout]    --> src/gpio.rs:450:31
[INFO] [stdout]     |
[INFO] [stdout] 450 |             Port::H => crate::pac::GPIOH::ptr() as _,
[INFO] [stdout]     |                               ^^^ could not find `pac` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:332:23
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/i2c.rs:557:27
[INFO] [stdout]     |
[INFO] [stdout] 557 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:358:23
[INFO] [stdout]     |
[INFO] [stdout] 358 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/i2c.rs:624:27
[INFO] [stdout]     |
[INFO] [stdout] 624 |         D: Deref<Target = dma_p::RegisterBlock>,
[INFO] [stdout]     |                           ^^^^^ use of undeclared crate or module `dma_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:433:31
[INFO] [stdout]     |
[INFO] [stdout] 433 |             fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `dma_p`
[INFO] [stdout]    --> src/sai.rs:849:27
[INFO] [stdout]     |
[INFO] [stdout] 849 |         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/sai.rs:938:27
[INFO] [stdout]     |
[INFO] [stdout] 938 |         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:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |         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:552:27
[INFO] [stdout]     |
[INFO] [stdout] 552 |         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:595:27
[INFO] [stdout]     |
[INFO] [stdout] 595 |         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:331:27
[INFO] [stdout]     |
[INFO] [stdout] 331 |         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:398:27
[INFO] [stdout]     |
[INFO] [stdout] 398 |         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:533:34
[INFO] [stdout]     |
[INFO] [stdout] 533 |         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:554:31
[INFO] [stdout]     |
[INFO] [stdout] 554 |         let rcc = unsafe { &(*pac::RCC::ptr()) };
[INFO] [stdout]     |                               ^^^ use of undeclared crate or module `pac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:208:23
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn en_reset(rcc: &RegisterBlock);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:223:23
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:242:23
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:248:23
[INFO] [stdout]     |
[INFO] [stdout] 248 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:255:23
[INFO] [stdout]     |
[INFO] [stdout] 255 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[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`, `Dma`, `self`
[INFO] [stdout]   --> src/adc.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | use crate::dma::{self, ChannelCfg, Dma, DmaChannel};
[INFO] [stdout]    |                  ^^^^  ^^^^^^^^^^  ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:269:23
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:276:23
[INFO] [stdout]     |
[INFO] [stdout] 276 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition
[INFO] [stdout]     --> src/adc.rs:278:1
[INFO] [stdout]      |
[INFO] [stdout] 278  | / macro_rules! hal {
[INFO] [stdout] 279  | |     ($ADC:ident, $ADC_COMMON:ident, $adc:ident, $rcc_num:tt) => {
[INFO] [stdout] 280  | |         impl Adc<pac::$ADC> {
[INFO] [stdout] 281  | |             paste! {
[INFO] [stdout] ...    |
[INFO] [stdout] 1133 | |     }
[INFO] [stdout] 1134 | | }
[INFO] [stdout]      | |_^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `peripheral::SCB`
[INFO] [stdout]   --> src/low_power.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use cortex_m::{asm::wfi, peripheral::SCB, Peripherals};
[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] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:290:23
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[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: `DmaPeriph`, `rcc_en_reset`
[INFO] [stdout]   --> src/sai.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     rcc_en_reset,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 12 |     util::{DmaPeriph, RccPeriph},
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_if::cfg_if`
[INFO] [stdout]   --> src/sai.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use cfg_if::cfg_if;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:310:23
[INFO] [stdout]     |
[INFO] [stdout] 310 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:325:23
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::ops::Deref`
[INFO] [stdout]  --> src/util.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DmaChannel`, `DmaInput`, `Dma`, `self`
[INFO] [stdout]   --> src/util.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::dma::{self, Dma, DmaChannel, DmaInput};
[INFO] [stdout]    |                  ^^^^  ^^^  ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:332:23
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:358:23
[INFO] [stdout]     |
[INFO] [stdout] 358 |     fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RegisterBlock` in this scope
[INFO] [stdout]    --> src/util.rs:433:31
[INFO] [stdout]     |
[INFO] [stdout] 433 |             fn en_reset(rcc: &RegisterBlock) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cbp::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::cpuid::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dcb::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout] 3   | use cortex_m::peripheral::dwt::RegisterBlock;
[INFO] [stdout]     |
[INFO] [stdout]       and 9 other candidates
[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`, `Dma`, `self`
[INFO] [stdout]   --> src/adc.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | use crate::dma::{self, ChannelCfg, Dma, DmaChannel};
[INFO] [stdout]    |                  ^^^^  ^^^^^^^^^^  ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition
[INFO] [stdout]     --> src/adc.rs:278:1
[INFO] [stdout]      |
[INFO] [stdout] 278  | / macro_rules! hal {
[INFO] [stdout] 279  | |     ($ADC:ident, $ADC_COMMON:ident, $adc:ident, $rcc_num:tt) => {
[INFO] [stdout] 280  | |         impl Adc<pac::$ADC> {
[INFO] [stdout] 281  | |             paste! {
[INFO] [stdout] ...    |
[INFO] [stdout] 1133 | |     }
[INFO] [stdout] 1134 | | }
[INFO] [stdout]      | |_^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `peripheral::SCB`
[INFO] [stdout]   --> src/low_power.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use cortex_m::{asm::wfi, peripheral::SCB, Peripherals};
[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: `DmaPeriph`, `rcc_en_reset`
[INFO] [stdout]   --> src/sai.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     rcc_en_reset,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 12 |     util::{DmaPeriph, RccPeriph},
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_if::cfg_if`
[INFO] [stdout]   --> src/sai.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use cfg_if::cfg_if;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::ops::Deref`
[INFO] [stdout]  --> src/util.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DmaChannel`, `DmaInput`, `Dma`, `self`
[INFO] [stdout]   --> src/util.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 | /             pub fn enable_pwm_output(
[INFO] [stdout] 521 | |                 &mut self,
[INFO] [stdout] 522 | |                 channel: TimChannel,
[INFO] [stdout] 523 | |                 compare: OutputCompare,
[INFO] [stdout] 524 | |                 dir: CountDir,
[INFO] [stdout] 525 | |                 duty: f32,
[INFO] [stdout] 526 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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_freq`
[INFO] [stdout]    --> src/timer.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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_input`
[INFO] [stdout]    --> src/timer.rs:538:13
[INFO] [stdout]     |
[INFO] [stdout] 538 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539 | |                 &mut self,
[INFO] [stdout] 540 | |                 channel: TimChannel,
[INFO] [stdout] 541 | |                 compare: OutputCompare,
[INFO] [stdout] 542 | |                 dir: CountDir,
[INFO] [stdout] 543 | |                 duty: f32,
[INFO] [stdout] 544 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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 `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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_output_compare`
[INFO] [stdout]    --> src/timer.rs:585:13
[INFO] [stdout]     |
[INFO] [stdout] 585 |             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] 985 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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 `get_duty`
[INFO] [stdout]    --> src/timer.rs:631:13
[INFO] [stdout]     |
[INFO] [stdout] 631 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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_duty`
[INFO] [stdout]    --> src/timer.rs:664:13
[INFO] [stdout]     |
[INFO] [stdout] 664 |             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] 985 | 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 `is_enabled`
[INFO] [stdout]    --> src/timer.rs:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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 `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:700:13
[INFO] [stdout]     |
[INFO] [stdout] 700 |             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] 985 | 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_freq`
[INFO] [stdout]    --> src/timer.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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_alignment`
[INFO] [stdout]    --> src/timer.rs:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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_polarity`
[INFO] [stdout]    --> src/timer.rs:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             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] 985 | 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_prescaler`
[INFO] [stdout]    --> src/timer.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:743:13
[INFO] [stdout]     |
[INFO] [stdout] 743 |             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] 985 | 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 `countdown`
[INFO] [stdout]    --> src/timer.rs:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 974 | 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_capture_compare`
[INFO] [stdout]    --> src/timer.rs:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             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] 985 | 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 `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 974 | 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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 974 | 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_capture_compare`
[INFO] [stdout]    --> src/timer.rs:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 974 | 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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 974 | 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_capture_compare`
[INFO] [stdout]    --> src/timer.rs:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |             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] 985 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 974 | 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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 974 | 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_preload`
[INFO] [stdout]    --> src/timer.rs:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 974 | 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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 974 | 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_preload`
[INFO] [stdout]    --> src/timer.rs:816:13
[INFO] [stdout]     |
[INFO] [stdout] 816 |             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] 985 | 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 `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 974 | 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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 974 | 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:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 | /             pub fn enable_pwm_output(
[INFO] [stdout] 521 | |                 &mut self,
[INFO] [stdout] 522 | |                 channel: TimChannel,
[INFO] [stdout] 523 | |                 compare: OutputCompare,
[INFO] [stdout] 524 | |                 dir: CountDir,
[INFO] [stdout] 525 | |                 duty: f32,
[INFO] [stdout] 526 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:538:13
[INFO] [stdout]     |
[INFO] [stdout] 538 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539 | |                 &mut self,
[INFO] [stdout] 540 | |                 channel: TimChannel,
[INFO] [stdout] 541 | |                 compare: OutputCompare,
[INFO] [stdout] 542 | |                 dir: CountDir,
[INFO] [stdout] 543 | |                 duty: f32,
[INFO] [stdout] 544 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:585:13
[INFO] [stdout]     |
[INFO] [stdout] 585 |             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] 985 | 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:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 | /             pub fn enable_pwm_output(
[INFO] [stdout] 521 | |                 &mut self,
[INFO] [stdout] 522 | |                 channel: TimChannel,
[INFO] [stdout] 523 | |                 compare: OutputCompare,
[INFO] [stdout] 524 | |                 dir: CountDir,
[INFO] [stdout] 525 | |                 duty: f32,
[INFO] [stdout] 526 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:538:13
[INFO] [stdout]     |
[INFO] [stdout] 538 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539 | |                 &mut self,
[INFO] [stdout] 540 | |                 channel: TimChannel,
[INFO] [stdout] 541 | |                 compare: OutputCompare,
[INFO] [stdout] 542 | |                 dir: CountDir,
[INFO] [stdout] 543 | |                 duty: f32,
[INFO] [stdout] 544 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:585:13
[INFO] [stdout]     |
[INFO] [stdout] 585 |             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] 985 | 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:631:13
[INFO] [stdout]     |
[INFO] [stdout] 631 |             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] 985 | 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:631:13
[INFO] [stdout]     |
[INFO] [stdout] 631 |             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] 985 | 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:664:13
[INFO] [stdout]     |
[INFO] [stdout] 664 |             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] 985 | 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:664:13
[INFO] [stdout]     |
[INFO] [stdout] 664 |             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] 985 | 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:700:13
[INFO] [stdout]     |
[INFO] [stdout] 700 |             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] 985 | 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:700:13
[INFO] [stdout]     |
[INFO] [stdout] 700 |             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] 985 | 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:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             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] 985 | 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:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             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] 985 | 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:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             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] 985 | 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:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             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] 985 | 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:743:13
[INFO] [stdout]     |
[INFO] [stdout] 743 |             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] 985 | 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:743:13
[INFO] [stdout]     |
[INFO] [stdout] 743 |             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] 985 | 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:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             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] 985 | 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:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             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] 985 | 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:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |             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] 985 | 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:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |             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] 985 | 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:816:13
[INFO] [stdout]     |
[INFO] [stdout] 816 |             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] 985 | 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:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             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] 985 | 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:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 | /             pub fn enable_pwm_output(
[INFO] [stdout] 521 | |                 &mut self,
[INFO] [stdout] 522 | |                 channel: TimChannel,
[INFO] [stdout] 523 | |                 compare: OutputCompare,
[INFO] [stdout] 524 | |                 dir: CountDir,
[INFO] [stdout] 525 | |                 duty: f32,
[INFO] [stdout] 526 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             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] 985 | 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:538:13
[INFO] [stdout]     |
[INFO] [stdout] 538 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539 | |                 &mut self,
[INFO] [stdout] 540 | |                 channel: TimChannel,
[INFO] [stdout] 541 | |                 compare: OutputCompare,
[INFO] [stdout] 542 | |                 dir: CountDir,
[INFO] [stdout] 543 | |                 duty: f32,
[INFO] [stdout] 544 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |             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] 985 | 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:585:13
[INFO] [stdout]     |
[INFO] [stdout] 585 |             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] 985 | 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:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |             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] 985 | 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:631:13
[INFO] [stdout]     |
[INFO] [stdout] 631 |             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] 985 | 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:816:13
[INFO] [stdout]     |
[INFO] [stdout] 816 |             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] 985 | 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:664:13
[INFO] [stdout]     |
[INFO] [stdout] 664 |             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] 985 | 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:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 | /             pub fn enable_pwm_output(
[INFO] [stdout] 521 | |                 &mut self,
[INFO] [stdout] 522 | |                 channel: TimChannel,
[INFO] [stdout] 523 | |                 compare: OutputCompare,
[INFO] [stdout] 524 | |                 dir: CountDir,
[INFO] [stdout] 525 | |                 duty: f32,
[INFO] [stdout] 526 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:700:13
[INFO] [stdout]     |
[INFO] [stdout] 700 |             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] 985 | 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:538:13
[INFO] [stdout]     |
[INFO] [stdout] 538 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539 | |                 &mut self,
[INFO] [stdout] 540 | |                 channel: TimChannel,
[INFO] [stdout] 541 | |                 compare: OutputCompare,
[INFO] [stdout] 542 | |                 dir: CountDir,
[INFO] [stdout] 543 | |                 duty: f32,
[INFO] [stdout] 544 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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:585:13
[INFO] [stdout]     |
[INFO] [stdout] 585 |             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] 985 | 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:631:13
[INFO] [stdout]     |
[INFO] [stdout] 631 |             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] 985 | 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:664:13
[INFO] [stdout]     |
[INFO] [stdout] 664 |             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] 985 | 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:700:13
[INFO] [stdout]     |
[INFO] [stdout] 700 |             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] 985 | 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:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             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] 985 | 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:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             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] 985 | 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:743:13
[INFO] [stdout]     |
[INFO] [stdout] 743 |             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] 985 | 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:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             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] 985 | 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:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             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] 985 | 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:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             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] 985 | 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:743:13
[INFO] [stdout]     |
[INFO] [stdout] 743 |             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] 985 | 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:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             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] 985 | 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:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             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] 985 | 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:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |             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] 985 | 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:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             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] 985 | 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:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |             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] 985 | 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:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |             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] 985 | 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:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |             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] 985 | 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:816:13
[INFO] [stdout]     |
[INFO] [stdout] 816 |             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] 985 | 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:816:13
[INFO] [stdout]     |
[INFO] [stdout] 816 |             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] 985 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 | /             pub fn enable_pwm_output(
[INFO] [stdout] 521 | |                 &mut self,
[INFO] [stdout] 522 | |                 channel: TimChannel,
[INFO] [stdout] 523 | |                 compare: OutputCompare,
[INFO] [stdout] 524 | |                 dir: CountDir,
[INFO] [stdout] 525 | |                 duty: f32,
[INFO] [stdout] 526 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]     |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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`
[INFO] [stdout]    --> src/timer.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_input`
[INFO] [stdout]    --> src/timer.rs:538:13
[INFO] [stdout]     |
[INFO] [stdout] 538 | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539 | |                 &mut self,
[INFO] [stdout] 540 | |                 channel: TimChannel,
[INFO] [stdout] 541 | |                 compare: OutputCompare,
[INFO] [stdout] 542 | |                 dir: CountDir,
[INFO] [stdout] 543 | |                 duty: f32,
[INFO] [stdout] 544 | |             ) {
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]     |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 985 |   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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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_output_compare`
[INFO] [stdout]    --> src/timer.rs:585:13
[INFO] [stdout]     |
[INFO] [stdout] 585 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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 `get_duty`
[INFO] [stdout]    --> src/timer.rs:631:13
[INFO] [stdout]     |
[INFO] [stdout] 631 |             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] 985 | 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:664:13
[INFO] [stdout]     |
[INFO] [stdout] 664 |             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] 985 | 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 `is_enabled`
[INFO] [stdout]    --> src/timer.rs:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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 `get_max_duty`
[INFO] [stdout]    --> src/timer.rs:700:13
[INFO] [stdout]     |
[INFO] [stdout] 700 |             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] 985 | 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_freq`
[INFO] [stdout]    --> src/timer.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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_alignment`
[INFO] [stdout]    --> src/timer.rs:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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_polarity`
[INFO] [stdout]    --> src/timer.rs:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             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] 985 | 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_prescaler`
[INFO] [stdout]    --> src/timer.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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_complementary_polarity`
[INFO] [stdout]    --> src/timer.rs:743:13
[INFO] [stdout]     |
[INFO] [stdout] 743 |             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] 985 | 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:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             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] 985 | 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:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             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] 985 | 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:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |             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] 985 | 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 `countdown`
[INFO] [stdout]    --> src/timer.rs:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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_preload`
[INFO] [stdout]    --> src/timer.rs:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |             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] 985 | 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 `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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_preload`
[INFO] [stdout]    --> src/timer.rs:816:13
[INFO] [stdout]     |
[INFO] [stdout] 816 |             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] 985 | 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`
[INFO] [stdout]    --> src/timer.rs:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:520:13
[INFO] [stdout]      |
[INFO] [stdout] 520  | /             pub fn enable_pwm_output(
[INFO] [stdout] 521  | |                 &mut self,
[INFO] [stdout] 522  | |                 channel: TimChannel,
[INFO] [stdout] 523  | |                 compare: OutputCompare,
[INFO] [stdout] 524  | |                 dir: CountDir,
[INFO] [stdout] 525  | |                 duty: f32,
[INFO] [stdout] 526  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]      |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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_prescaler`
[INFO] [stdout]    --> src/timer.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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_input`
[INFO] [stdout]     --> src/timer.rs:538:13
[INFO] [stdout]      |
[INFO] [stdout] 538  | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539  | |                 &mut self,
[INFO] [stdout] 540  | |                 channel: TimChannel,
[INFO] [stdout] 541  | |                 compare: OutputCompare,
[INFO] [stdout] 542  | |                 dir: CountDir,
[INFO] [stdout] 543  | |                 duty: f32,
[INFO] [stdout] 544  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]      |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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 `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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_output_compare`
[INFO] [stdout]     --> src/timer.rs:585:13
[INFO] [stdout]      |
[INFO] [stdout] 585  |             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] 1011 | 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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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 `get_duty`
[INFO] [stdout]     --> src/timer.rs:631:13
[INFO] [stdout]      |
[INFO] [stdout] 631  |             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] 1011 | 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 `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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_duty`
[INFO] [stdout]     --> src/timer.rs:664:13
[INFO] [stdout]      |
[INFO] [stdout] 664  |             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] 1011 | 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`
[INFO] [stdout]    --> src/timer.rs:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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 `get_max_duty`
[INFO] [stdout]     --> src/timer.rs:700:13
[INFO] [stdout]      |
[INFO] [stdout] 700  |             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] 1011 | 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 `is_enabled`
[INFO] [stdout]    --> src/timer.rs:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_alignment`
[INFO] [stdout]     --> src/timer.rs:721:13
[INFO] [stdout]      |
[INFO] [stdout] 721  |             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] 1011 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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_polarity`
[INFO] [stdout]     --> src/timer.rs:732:13
[INFO] [stdout]      |
[INFO] [stdout] 732  |             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] 1011 | 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 `countdown`
[INFO] [stdout]    --> src/timer.rs:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             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] 995 |         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_complementary_polarity`
[INFO] [stdout]     --> src/timer.rs:743:13
[INFO] [stdout]      |
[INFO] [stdout] 743  |             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] 1011 | 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 `clear_interrupt`
[INFO] [stdout]    --> src/timer.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |             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] 995 |         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:325:13
[INFO] [stdout]     |
[INFO] [stdout] 325 |             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] 995 |         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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:753:13
[INFO] [stdout]      |
[INFO] [stdout] 753  |             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] 1011 | 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`
[INFO] [stdout]    --> src/timer.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |             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] 995 |         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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:764:13
[INFO] [stdout]      |
[INFO] [stdout] 764  |             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] 1011 | 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 `is_enabled`
[INFO] [stdout]    --> src/timer.rs:335:13
[INFO] [stdout]     |
[INFO] [stdout] 335 |             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] 995 |         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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:775:13
[INFO] [stdout]      |
[INFO] [stdout] 775  |             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] 1011 | 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_period`
[INFO] [stdout]    --> src/timer.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             duplicate definitions for `set_period`
[INFO] [stdout]     |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 995 |         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_preload`
[INFO] [stdout]     --> src/timer.rs:799:13
[INFO] [stdout]      |
[INFO] [stdout] 799  |             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] 1011 | 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:816:13
[INFO] [stdout]      |
[INFO] [stdout] 816  |             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] 1011 | 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:520:13
[INFO] [stdout]      |
[INFO] [stdout] 520  | /             pub fn enable_pwm_output(
[INFO] [stdout] 521  | |                 &mut self,
[INFO] [stdout] 522  | |                 channel: TimChannel,
[INFO] [stdout] 523  | |                 compare: OutputCompare,
[INFO] [stdout] 524  | |                 dir: CountDir,
[INFO] [stdout] 525  | |                 duty: f32,
[INFO] [stdout] 526  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]      |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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:538:13
[INFO] [stdout]      |
[INFO] [stdout] 538  | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539  | |                 &mut self,
[INFO] [stdout] 540  | |                 channel: TimChannel,
[INFO] [stdout] 541  | |                 compare: OutputCompare,
[INFO] [stdout] 542  | |                 dir: CountDir,
[INFO] [stdout] 543  | |                 duty: f32,
[INFO] [stdout] 544  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]      |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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:585:13
[INFO] [stdout]      |
[INFO] [stdout] 585  |             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] 1011 | 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:631:13
[INFO] [stdout]      |
[INFO] [stdout] 631  |             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] 1011 | 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:664:13
[INFO] [stdout]      |
[INFO] [stdout] 664  |             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] 1011 | 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_freq`
[INFO] [stdout]    --> src/timer.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             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] 995 |         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:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             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] 995 |         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 `get_max_duty`
[INFO] [stdout]     --> src/timer.rs:700:13
[INFO] [stdout]      |
[INFO] [stdout] 700  |             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] 1011 | 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_prescaler`
[INFO] [stdout]    --> src/timer.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |             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] 995 |         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_alignment`
[INFO] [stdout]     --> src/timer.rs:721:13
[INFO] [stdout]      |
[INFO] [stdout] 721  |             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] 1011 | 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 `reset_countdown`
[INFO] [stdout]    --> src/timer.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             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] 995 |         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_polarity`
[INFO] [stdout]     --> src/timer.rs:732:13
[INFO] [stdout]      |
[INFO] [stdout] 732  |             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] 1011 | 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 `countdown`
[INFO] [stdout]    --> src/timer.rs:382:13
[INFO] [stdout]     |
[INFO] [stdout] 382 |             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] 995 |         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:520:13
[INFO] [stdout]      |
[INFO] [stdout] 520  | /             pub fn enable_pwm_output(
[INFO] [stdout] 521  | |                 &mut self,
[INFO] [stdout] 522  | |                 channel: TimChannel,
[INFO] [stdout] 523  | |                 compare: OutputCompare,
[INFO] [stdout] 524  | |                 dir: CountDir,
[INFO] [stdout] 525  | |                 duty: f32,
[INFO] [stdout] 526  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]      |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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:538:13
[INFO] [stdout]      |
[INFO] [stdout] 538  | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539  | |                 &mut self,
[INFO] [stdout] 540  | |                 channel: TimChannel,
[INFO] [stdout] 541  | |                 compare: OutputCompare,
[INFO] [stdout] 542  | |                 dir: CountDir,
[INFO] [stdout] 543  | |                 duty: f32,
[INFO] [stdout] 544  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]      |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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:585:13
[INFO] [stdout]      |
[INFO] [stdout] 585  |             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] 1011 | 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:743:13
[INFO] [stdout]      |
[INFO] [stdout] 743  |             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] 1011 | 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:631:13
[INFO] [stdout]      |
[INFO] [stdout] 631  |             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] 1011 | 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:753:13
[INFO] [stdout]      |
[INFO] [stdout] 753  |             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] 1011 | 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:664:13
[INFO] [stdout]      |
[INFO] [stdout] 664  |             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] 1011 | 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:764:13
[INFO] [stdout]      |
[INFO] [stdout] 764  |             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] 1011 | 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:700:13
[INFO] [stdout]      |
[INFO] [stdout] 700  |             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] 1011 | 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:775:13
[INFO] [stdout]      |
[INFO] [stdout] 775  |             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] 1011 | 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:721:13
[INFO] [stdout]      |
[INFO] [stdout] 721  |             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] 1011 | 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:799:13
[INFO] [stdout]      |
[INFO] [stdout] 799  |             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] 1011 | 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:732:13
[INFO] [stdout]      |
[INFO] [stdout] 732  |             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] 1011 | 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:743:13
[INFO] [stdout]      |
[INFO] [stdout] 743  |             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] 1011 | 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:753:13
[INFO] [stdout]      |
[INFO] [stdout] 753  |             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] 1011 | 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:816:13
[INFO] [stdout]      |
[INFO] [stdout] 816  |             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] 1011 | 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:764:13
[INFO] [stdout]      |
[INFO] [stdout] 764  |             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] 1011 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:775:13
[INFO] [stdout]      |
[INFO] [stdout] 775  |             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] 1011 | 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 `clear_interrupt`
[INFO] [stdout]     --> src/timer.rs:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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_preload`
[INFO] [stdout]     --> src/timer.rs:799:13
[INFO] [stdout]      |
[INFO] [stdout] 799  |             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] 1011 | 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`
[INFO] [stdout]     --> src/timer.rs:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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_preload`
[INFO] [stdout]     --> src/timer.rs:816:13
[INFO] [stdout]      |
[INFO] [stdout] 816  |             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] 1011 | 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:520:13
[INFO] [stdout]      |
[INFO] [stdout] 520  | /             pub fn enable_pwm_output(
[INFO] [stdout] 521  | |                 &mut self,
[INFO] [stdout] 522  | |                 channel: TimChannel,
[INFO] [stdout] 523  | |                 compare: OutputCompare,
[INFO] [stdout] 524  | |                 dir: CountDir,
[INFO] [stdout] 525  | |                 duty: f32,
[INFO] [stdout] 526  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]      |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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:538:13
[INFO] [stdout]      |
[INFO] [stdout] 538  | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539  | |                 &mut self,
[INFO] [stdout] 540  | |                 channel: TimChannel,
[INFO] [stdout] 541  | |                 compare: OutputCompare,
[INFO] [stdout] 542  | |                 dir: CountDir,
[INFO] [stdout] 543  | |                 duty: f32,
[INFO] [stdout] 544  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]      |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |   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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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_output_compare`
[INFO] [stdout]     --> src/timer.rs:585:13
[INFO] [stdout]      |
[INFO] [stdout] 585  |             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] 1011 | 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`
[INFO] [stdout]     --> src/timer.rs:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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 `get_duty`
[INFO] [stdout]     --> src/timer.rs:631:13
[INFO] [stdout]      |
[INFO] [stdout] 631  |             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] 1011 | 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 `reset_countdown`
[INFO] [stdout]     --> src/timer.rs:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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_duty`
[INFO] [stdout]     --> src/timer.rs:664:13
[INFO] [stdout]      |
[INFO] [stdout] 664  |             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] 1011 | 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 `countdown`
[INFO] [stdout]     --> src/timer.rs:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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 `get_max_duty`
[INFO] [stdout]     --> src/timer.rs:700:13
[INFO] [stdout]      |
[INFO] [stdout] 700  |             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] 1011 | 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 `clear_interrupt`
[INFO] [stdout]     --> src/timer.rs:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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_alignment`
[INFO] [stdout]     --> src/timer.rs:721:13
[INFO] [stdout]      |
[INFO] [stdout] 721  |             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] 1011 | 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`
[INFO] [stdout]     --> src/timer.rs:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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_polarity`
[INFO] [stdout]     --> src/timer.rs:732:13
[INFO] [stdout]      |
[INFO] [stdout] 732  |             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] 1011 | 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 `is_enabled`
[INFO] [stdout]     --> src/timer.rs:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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_complementary_polarity`
[INFO] [stdout]     --> src/timer.rs:743:13
[INFO] [stdout]      |
[INFO] [stdout] 743  |             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] 1011 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:753:13
[INFO] [stdout]      |
[INFO] [stdout] 753  |             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] 1011 | 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`
[INFO] [stdout]     --> src/timer.rs:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:764:13
[INFO] [stdout]      |
[INFO] [stdout] 764  |             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] 1011 | 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_prescaler`
[INFO] [stdout]     --> src/timer.rs:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:775:13
[INFO] [stdout]      |
[INFO] [stdout] 775  |             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] 1011 | 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 `reset_countdown`
[INFO] [stdout]     --> src/timer.rs:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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_preload`
[INFO] [stdout]     --> src/timer.rs:799:13
[INFO] [stdout]      |
[INFO] [stdout] 799  |             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] 1011 | 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 `countdown`
[INFO] [stdout]     --> src/timer.rs:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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_preload`
[INFO] [stdout]     --> src/timer.rs:816:13
[INFO] [stdout]      |
[INFO] [stdout] 816  |             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] 1011 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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:520:13
[INFO] [stdout]      |
[INFO] [stdout] 520  | /             pub fn enable_pwm_output(
[INFO] [stdout] 521  | |                 &mut self,
[INFO] [stdout] 522  | |                 channel: TimChannel,
[INFO] [stdout] 523  | |                 compare: OutputCompare,
[INFO] [stdout] 524  | |                 dir: CountDir,
[INFO] [stdout] 525  | |                 duty: f32,
[INFO] [stdout] 526  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]      |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 1035 |   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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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_input`
[INFO] [stdout]     --> src/timer.rs:538:13
[INFO] [stdout]      |
[INFO] [stdout] 538  | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539  | |                 &mut self,
[INFO] [stdout] 540  | |                 channel: TimChannel,
[INFO] [stdout] 541  | |                 compare: OutputCompare,
[INFO] [stdout] 542  | |                 dir: CountDir,
[INFO] [stdout] 543  | |                 duty: f32,
[INFO] [stdout] 544  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]      |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 1035 |   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`
[INFO] [stdout]     --> src/timer.rs:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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_output_compare`
[INFO] [stdout]     --> src/timer.rs:585:13
[INFO] [stdout]      |
[INFO] [stdout] 585  |             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] 1035 | 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:631:13
[INFO] [stdout]      |
[INFO] [stdout] 631  |             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] 1035 | 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:664:13
[INFO] [stdout]      |
[INFO] [stdout] 664  |             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] 1035 | 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 `is_enabled`
[INFO] [stdout]     --> src/timer.rs:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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 `get_max_duty`
[INFO] [stdout]     --> src/timer.rs:700:13
[INFO] [stdout]      |
[INFO] [stdout] 700  |             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] 1035 | 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 `countdown`
[INFO] [stdout]     --> src/timer.rs:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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_alignment`
[INFO] [stdout]     --> src/timer.rs:721:13
[INFO] [stdout]      |
[INFO] [stdout] 721  |             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] 1035 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1022 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1022 | 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_polarity`
[INFO] [stdout]     --> src/timer.rs:732:13
[INFO] [stdout]      |
[INFO] [stdout] 732  |             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] 1035 | 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:743:13
[INFO] [stdout]      |
[INFO] [stdout] 743  |             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] 1035 | 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`
[INFO] [stdout]     --> src/timer.rs:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1022 | 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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:753:13
[INFO] [stdout]      |
[INFO] [stdout] 753  |             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] 1035 | 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 `is_enabled`
[INFO] [stdout]     --> src/timer.rs:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:764:13
[INFO] [stdout]      |
[INFO] [stdout] 764  |             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] 1035 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1022 | 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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1022 | 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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:775:13
[INFO] [stdout]      |
[INFO] [stdout] 775  |             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] 1035 | 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:799:13
[INFO] [stdout]      |
[INFO] [stdout] 799  |             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] 1035 | 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`
[INFO] [stdout]     --> src/timer.rs:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1022 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1022 | 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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1022 | 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_preload`
[INFO] [stdout]     --> src/timer.rs:816:13
[INFO] [stdout]      |
[INFO] [stdout] 816  |             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] 1035 | 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 `countdown`
[INFO] [stdout]     --> src/timer.rs:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1022 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1055 |         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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1055 |         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_pwm_output`
[INFO] [stdout]     --> src/timer.rs:520:13
[INFO] [stdout]      |
[INFO] [stdout] 520  | /             pub fn enable_pwm_output(
[INFO] [stdout] 521  | |                 &mut self,
[INFO] [stdout] 522  | |                 channel: TimChannel,
[INFO] [stdout] 523  | |                 compare: OutputCompare,
[INFO] [stdout] 524  | |                 dir: CountDir,
[INFO] [stdout] 525  | |                 duty: f32,
[INFO] [stdout] 526  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `enable_pwm_output`
[INFO] [stdout]      |               other definition for `enable_pwm_output`
[INFO] [stdout] ...
[INFO] [stdout] 1035 |   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`
[INFO] [stdout]     --> src/timer.rs:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1055 |         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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1055 |         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_pwm_input`
[INFO] [stdout]     --> src/timer.rs:538:13
[INFO] [stdout]      |
[INFO] [stdout] 538  | /             pub fn _enable_pwm_input(
[INFO] [stdout] 539  | |                 &mut self,
[INFO] [stdout] 540  | |                 channel: TimChannel,
[INFO] [stdout] 541  | |                 compare: OutputCompare,
[INFO] [stdout] 542  | |                 dir: CountDir,
[INFO] [stdout] 543  | |                 duty: f32,
[INFO] [stdout] 544  | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________duplicate definitions for `_enable_pwm_input`
[INFO] [stdout]      |               other definition for `_enable_pwm_input`
[INFO] [stdout] ...
[INFO] [stdout] 1035 |   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:585:13
[INFO] [stdout]      |
[INFO] [stdout] 585  |             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] 1035 | 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 `is_enabled`
[INFO] [stdout]     --> src/timer.rs:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1055 |         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 `get_duty`
[INFO] [stdout]     --> src/timer.rs:631:13
[INFO] [stdout]      |
[INFO] [stdout] 631  |             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] 1035 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1055 |         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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1055 |         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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1055 |         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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1055 |         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_duty`
[INFO] [stdout]     --> src/timer.rs:664:13
[INFO] [stdout]      |
[INFO] [stdout] 664  |             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] 1035 | 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 `reset_countdown`
[INFO] [stdout]     --> src/timer.rs:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1055 |         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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1055 |         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 `get_max_duty`
[INFO] [stdout]     --> src/timer.rs:700:13
[INFO] [stdout]      |
[INFO] [stdout] 700  |             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] 1035 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1055 |         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_alignment`
[INFO] [stdout]     --> src/timer.rs:721:13
[INFO] [stdout]      |
[INFO] [stdout] 721  |             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] 1035 | 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 `clear_interrupt`
[INFO] [stdout]     --> src/timer.rs:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1055 |         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_polarity`
[INFO] [stdout]     --> src/timer.rs:732:13
[INFO] [stdout]      |
[INFO] [stdout] 732  |             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] 1035 | 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`
[INFO] [stdout]     --> src/timer.rs:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1055 |         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_complementary_polarity`
[INFO] [stdout]     --> src/timer.rs:743:13
[INFO] [stdout]      |
[INFO] [stdout] 743  |             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] 1035 | 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`
[INFO] [stdout]     --> src/timer.rs:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1055 |         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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1055 |         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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:753:13
[INFO] [stdout]      |
[INFO] [stdout] 753  |             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] 1035 | 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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1055 |         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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1055 |         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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:764:13
[INFO] [stdout]      |
[INFO] [stdout] 764  |             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] 1035 | 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`
[INFO] [stdout]     --> src/timer.rs:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1055 |         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_capture_compare`
[INFO] [stdout]     --> src/timer.rs:775:13
[INFO] [stdout]      |
[INFO] [stdout] 775  |             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] 1035 | 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_prescaler`
[INFO] [stdout]     --> src/timer.rs:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1055 |         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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1055 |         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_preload`
[INFO] [stdout]     --> src/timer.rs:799:13
[INFO] [stdout]      |
[INFO] [stdout] 799  |             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] 1035 | 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 `countdown`
[INFO] [stdout]     --> src/timer.rs:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1055 |         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_preload`
[INFO] [stdout]     --> src/timer.rs:816:13
[INFO] [stdout]      |
[INFO] [stdout] 816  |             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] 1035 | 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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1055 |         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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1055 |         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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1055 |         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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1055 |         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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1055 |         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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1055 |         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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1055 |         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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1055 |         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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1055 |         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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1055 |         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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1055 |         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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1055 |         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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1055 |         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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1055 |         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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1055 |         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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1055 |         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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1055 |         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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1055 |         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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1055 |         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:377:13
[INFO] [stdout]      |
[INFO] [stdout] 377  |             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] 1055 |         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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1055 |         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:382:13
[INFO] [stdout]      |
[INFO] [stdout] 382  |             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] 1055 |         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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1055 |         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:283:13
[INFO] [stdout]      |
[INFO] [stdout] 283  |             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] 1123 | 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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1055 |         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:308:13
[INFO] [stdout]      |
[INFO] [stdout] 308  |             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] 1123 | 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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1055 |         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:325:13
[INFO] [stdout]      |
[INFO] [stdout] 325  |             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] 1123 | 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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1055 |         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:330:13
[INFO] [stdout]      |
[INFO] [stdout] 330  |             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] 1123 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1123 | 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:335:13
[INFO] [stdout]      |
[INFO] [stdout] 335  |             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] 1055 |         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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1055 |         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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1055 |         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_period`
[INFO] [stdout]     --> src/timer.rs:342:13
[INFO] [stdout]      |
[INFO] [stdout] 342  |             pub fn set_period(&mut self, time: f32) -> Result<(), ValueError> {
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             duplicate definitions for `set_period`
[INFO] [stdout]      |             other definition for `set_period`
[INFO] [stdout] ...
[INFO] [stdout] 1123 | 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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1055 |         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:350:13
[INFO] [stdout]      |
[INFO] [stdout] 350  |             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] 1123 | 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:372:13
[INFO] [stdout]      |
[INFO] [stdout] 372  |             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] 1055 |         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:365:13
[INFO] [stdout]      |
[INFO] [stdout] 365  |             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] 1123 | 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:372:13
[INFO] [stdout]      |
[WARN] too many lines in the log, truncating it
