[INFO] fetching crate rust_hdl_lib_widgets 0.44.0...
[INFO] checking rust_hdl_lib_widgets-0.44.0 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate rust_hdl_lib_widgets 0.44.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate rust_hdl_lib_widgets 0.44.0
[INFO] finished tweaking crates.io crate rust_hdl_lib_widgets 0.44.0
[INFO] tweaked toml for crates.io crate rust_hdl_lib_widgets 0.44.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rust_hdl_lib_widgets 0.44.0 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 46 packages to highest compatible versions
[INFO] [stderr]       Adding rand v0.8.8 (available: v0.10.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | homepage = "https://github.com/samitbasu/rust-hdl"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 | repository = "https://github.com/samitbasu/rust-hdl"
[INFO] [stderr]    |              ---------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rust_hdl_lib_widgets` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3
[INFO] running `Command { std: "docker" "start" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | homepage = "https://github.com/samitbasu/rust-hdl"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 | repository = "https://github.com/samitbasu/rust-hdl"
[INFO] [stderr]    |              ---------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rust_hdl_lib_widgets` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.191
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling crossbeam-deque v0.8.8
[INFO] [stderr]    Compiling substring v1.4.5
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking regex-automata v0.4.18
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]     Checking array-init v2.1.0
[INFO] [stderr]     Checking vcd v0.6.1
[INFO] [stderr]     Checking crossbeam-epoch v0.9.21
[INFO] [stderr]     Checking crossbeam-queue v0.3.14
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking evalexpr v6.6.0
[INFO] [stderr]     Checking svg v0.10.0
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking crossbeam v0.8.5
[INFO] [stderr]    Compiling aho-corasick v1.1.5
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.8
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]    Compiling embed-doc-image v0.1.4
[INFO] [stderr]    Compiling rust_hdl_lib_macros v0.44.1
[INFO] [stderr]     Checking rust_hdl_lib_core v0.44.1
[INFO] [stderr]     Checking rust_hdl_lib_widgets v0.44.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `dff_setup`
[INFO] [stdout]  --> src/delay_line.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{dff::DFF, dff_setup};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dff_setup`
[INFO] [stdout]  --> src/dff_with_init.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{dff::DFF, dff_setup};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dff_setup`
[INFO] [stdout]  --> src/delay_line.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{dff::DFF, dff_setup};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dff_setup`
[INFO] [stdout]  --> src/dff_with_init.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{dff::DFF, dff_setup};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/auto_reset.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 |         self.reset.next = false.into();
[INFO] [stdout]    |                           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 16 -         self.reset.next = false.into();
[INFO] [stdout] 16 +         self.reset.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 16 -         self.reset.next = false.into();
[INFO] [stdout] 16 +         self.reset.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/auto_reset.rs:19:31
[INFO] [stdout]    |
[INFO] [stdout] 19 |             self.reset.next = true.into();
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 19 -             self.reset.next = true.into();
[INFO] [stdout] 19 +             self.reset.next = true;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 19 -             self.reset.next = true.into();
[INFO] [stdout] 19 +             self.reset.next = <bool as Into<_>>::into(true);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/fifo/fifo_logic.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val()).into();
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 45 -         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val()).into();
[INFO] [stdout] 45 +         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val());
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 45 -         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val()).into();
[INFO] [stdout] 45 +         self.is_empty.next = <bool as Into<_>>::into((self.read_address.q.val() == self.write_address_delayed.val()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/fifo/fifo_logic.rs:58:34
[INFO] [stdout]    |
[INFO] [stdout] 58 |         self.almost_empty.next = (self.fill_level.val() < self.block_size.val()).into();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 58 -         self.almost_empty.next = (self.fill_level.val() < self.block_size.val()).into();
[INFO] [stdout] 58 +         self.almost_empty.next = (self.fill_level.val() < self.block_size.val());
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 58 -         self.almost_empty.next = (self.fill_level.val() < self.block_size.val()).into();
[INFO] [stdout] 58 +         self.almost_empty.next = <bool as Into<_>>::into((self.fill_level.val() < self.block_size.val()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/fifo/fifo_logic.rs:195:38
[INFO] [stdout]     |
[INFO] [stdout] 195 |         self.ram_write_enable.next = false.into();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 195 -         self.ram_write_enable.next = false.into();
[INFO] [stdout] 195 +         self.ram_write_enable.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 195 -         self.ram_write_enable.next = false.into();
[INFO] [stdout] 195 +         self.ram_write_enable.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/fifo/fifo_logic.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             (self.read_address.val() == self.dff_write_address_delay.q.val()).into();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 199 -             (self.read_address.val() == self.dff_write_address_delay.q.val()).into();
[INFO] [stdout] 199 +             (self.read_address.val() == self.dff_write_address_delay.q.val());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 199 -             (self.read_address.val() == self.dff_write_address_delay.q.val()).into();
[INFO] [stdout] 199 +             <bool as Into<_>>::into((self.read_address.val() == self.dff_write_address_delay.q.val()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/fifo/fifo_logic.rs:217:33
[INFO] [stdout]     |
[INFO] [stdout] 217 |         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val()).into();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 217 -         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val()).into();
[INFO] [stdout] 217 +         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 217 -         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val()).into();
[INFO] [stdout] 217 +         self.almost_full.next = <bool as Into<_>>::into((self.fill_level.val() >= self.almost_full_level.val()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/synchronizer.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |         self.flag_out.next = false.into();
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 79 -         self.flag_out.next = false.into();
[INFO] [stdout] 79 +         self.flag_out.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 79 -         self.flag_out.next = false.into();
[INFO] [stdout] 79 +         self.flag_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/synchronizer.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 self.busy.next = false.into();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 85 -                 self.busy.next = false.into();
[INFO] [stdout] 85 +                 self.busy.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 85 -                 self.busy.next = false.into();
[INFO] [stdout] 85 +                 self.busy.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncSenderState`
[INFO] [stdout]   --> src/synchronizer.rs:89:41
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     self.state.d.next = SyncSenderState::WaitAck.into();
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 89 -                     self.state.d.next = SyncSenderState::WaitAck.into();
[INFO] [stdout] 89 +                     self.state.d.next = SyncSenderState::WaitAck;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 89 -                     self.state.d.next = SyncSenderState::WaitAck.into();
[INFO] [stdout] 89 +                     self.state.d.next = <SyncSenderState as Into<_>>::into(SyncSenderState::WaitAck);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncSenderState`
[INFO] [stdout]   --> src/synchronizer.rs:97:41
[INFO] [stdout]    |
[INFO] [stdout] 97 |                     self.state.d.next = SyncSenderState::WaitDone.into();
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 97 -                     self.state.d.next = SyncSenderState::WaitDone.into();
[INFO] [stdout] 97 +                     self.state.d.next = SyncSenderState::WaitDone;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 97 -                     self.state.d.next = SyncSenderState::WaitDone.into();
[INFO] [stdout] 97 +                     self.state.d.next = <SyncSenderState as Into<_>>::into(SyncSenderState::WaitDone);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/synchronizer.rs:98:42
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     self.flag_out.next = false.into();
[INFO] [stdout]    |                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 98 -                     self.flag_out.next = false.into();
[INFO] [stdout] 98 +                     self.flag_out.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 98 -                     self.flag_out.next = false.into();
[INFO] [stdout] 98 +                     self.flag_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncSenderState`
[INFO] [stdout]    --> src/synchronizer.rs:106:41
[INFO] [stdout]     |
[INFO] [stdout] 106 |                     self.state.d.next = SyncSenderState::Idle.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 106 -                     self.state.d.next = SyncSenderState::Idle.into();
[INFO] [stdout] 106 +                     self.state.d.next = SyncSenderState::Idle;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 106 -                     self.state.d.next = SyncSenderState::Idle.into();
[INFO] [stdout] 106 +                     self.state.d.next = <SyncSenderState as Into<_>>::into(SyncSenderState::Idle);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/synchronizer.rs:158:29
[INFO] [stdout]     |
[INFO] [stdout] 158 |         self.ack_out.next = false.into();
[INFO] [stdout]     |                             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 158 -         self.ack_out.next = false.into();
[INFO] [stdout] 158 +         self.ack_out.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 158 -         self.ack_out.next = false.into();
[INFO] [stdout] 158 +         self.ack_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/synchronizer.rs:161:36
[INFO] [stdout]     |
[INFO] [stdout] 161 |         self.update_delay.d.next = false.into();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 161 -         self.update_delay.d.next = false.into();
[INFO] [stdout] 161 +         self.update_delay.d.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 161 -         self.update_delay.d.next = false.into();
[INFO] [stdout] 161 +         self.update_delay.d.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncReceiverState`
[INFO] [stdout]    --> src/synchronizer.rs:166:41
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     self.state.d.next = SyncReceiverState::WaitDone.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 166 -                     self.state.d.next = SyncReceiverState::WaitDone.into();
[INFO] [stdout] 166 +                     self.state.d.next = SyncReceiverState::WaitDone;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 166 -                     self.state.d.next = SyncReceiverState::WaitDone.into();
[INFO] [stdout] 166 +                     self.state.d.next = <SyncReceiverState as Into<_>>::into(SyncReceiverState::WaitDone);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/synchronizer.rs:171:41
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     self.ack_out.next = false.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 171 -                     self.ack_out.next = false.into();
[INFO] [stdout] 171 +                     self.ack_out.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 171 -                     self.ack_out.next = false.into();
[INFO] [stdout] 171 +                     self.ack_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/synchronizer.rs:173:40
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     self.hold.d.next = self.sig_cross.val().into();
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 173 -                     self.hold.d.next = self.sig_cross.val().into();
[INFO] [stdout] 173 +                     self.hold.d.next = self.sig_cross.val();
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 173 -                     self.hold.d.next = self.sig_cross.val().into();
[INFO] [stdout] 173 +                     self.hold.d.next = <T as Into<_>>::into(self.sig_cross.val());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncReceiverState`
[INFO] [stdout]    --> src/synchronizer.rs:174:41
[INFO] [stdout]     |
[INFO] [stdout] 174 |                     self.state.d.next = SyncReceiverState::WaitSteady.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 174 -                     self.state.d.next = SyncReceiverState::WaitSteady.into();
[INFO] [stdout] 174 +                     self.state.d.next = SyncReceiverState::WaitSteady;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 174 -                     self.state.d.next = SyncReceiverState::WaitSteady.into();
[INFO] [stdout] 174 +                     self.state.d.next = <SyncReceiverState as Into<_>>::into(SyncReceiverState::WaitSteady);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust_hdl_lib_widgets` (lib) due to 19 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/auto_reset.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 |         self.reset.next = false.into();
[INFO] [stdout]    |                           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 16 -         self.reset.next = false.into();
[INFO] [stdout] 16 +         self.reset.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 16 -         self.reset.next = false.into();
[INFO] [stdout] 16 +         self.reset.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/auto_reset.rs:19:31
[INFO] [stdout]    |
[INFO] [stdout] 19 |             self.reset.next = true.into();
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 19 -             self.reset.next = true.into();
[INFO] [stdout] 19 +             self.reset.next = true;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 19 -             self.reset.next = true.into();
[INFO] [stdout] 19 +             self.reset.next = <bool as Into<_>>::into(true);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/fifo/fifo_logic.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val()).into();
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 45 -         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val()).into();
[INFO] [stdout] 45 +         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val());
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 45 -         self.is_empty.next = (self.read_address.q.val() == self.write_address_delayed.val()).into();
[INFO] [stdout] 45 +         self.is_empty.next = <bool as Into<_>>::into((self.read_address.q.val() == self.write_address_delayed.val()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/fifo/fifo_logic.rs:58:34
[INFO] [stdout]    |
[INFO] [stdout] 58 |         self.almost_empty.next = (self.fill_level.val() < self.block_size.val()).into();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 58 -         self.almost_empty.next = (self.fill_level.val() < self.block_size.val()).into();
[INFO] [stdout] 58 +         self.almost_empty.next = (self.fill_level.val() < self.block_size.val());
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 58 -         self.almost_empty.next = (self.fill_level.val() < self.block_size.val()).into();
[INFO] [stdout] 58 +         self.almost_empty.next = <bool as Into<_>>::into((self.fill_level.val() < self.block_size.val()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/fifo/fifo_logic.rs:195:38
[INFO] [stdout]     |
[INFO] [stdout] 195 |         self.ram_write_enable.next = false.into();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 195 -         self.ram_write_enable.next = false.into();
[INFO] [stdout] 195 +         self.ram_write_enable.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 195 -         self.ram_write_enable.next = false.into();
[INFO] [stdout] 195 +         self.ram_write_enable.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/fifo/fifo_logic.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             (self.read_address.val() == self.dff_write_address_delay.q.val()).into();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 199 -             (self.read_address.val() == self.dff_write_address_delay.q.val()).into();
[INFO] [stdout] 199 +             (self.read_address.val() == self.dff_write_address_delay.q.val());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 199 -             (self.read_address.val() == self.dff_write_address_delay.q.val()).into();
[INFO] [stdout] 199 +             <bool as Into<_>>::into((self.read_address.val() == self.dff_write_address_delay.q.val()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/fifo/fifo_logic.rs:217:33
[INFO] [stdout]     |
[INFO] [stdout] 217 |         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val()).into();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 217 -         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val()).into();
[INFO] [stdout] 217 +         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 217 -         self.almost_full.next = (self.fill_level.val() >= self.almost_full_level.val()).into();
[INFO] [stdout] 217 +         self.almost_full.next = <bool as Into<_>>::into((self.fill_level.val() >= self.almost_full_level.val()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/synchronizer.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |         self.flag_out.next = false.into();
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 79 -         self.flag_out.next = false.into();
[INFO] [stdout] 79 +         self.flag_out.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 79 -         self.flag_out.next = false.into();
[INFO] [stdout] 79 +         self.flag_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/synchronizer.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 self.busy.next = false.into();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 85 -                 self.busy.next = false.into();
[INFO] [stdout] 85 +                 self.busy.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 85 -                 self.busy.next = false.into();
[INFO] [stdout] 85 +                 self.busy.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncSenderState`
[INFO] [stdout]   --> src/synchronizer.rs:89:41
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     self.state.d.next = SyncSenderState::WaitAck.into();
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 89 -                     self.state.d.next = SyncSenderState::WaitAck.into();
[INFO] [stdout] 89 +                     self.state.d.next = SyncSenderState::WaitAck;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 89 -                     self.state.d.next = SyncSenderState::WaitAck.into();
[INFO] [stdout] 89 +                     self.state.d.next = <SyncSenderState as Into<_>>::into(SyncSenderState::WaitAck);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncSenderState`
[INFO] [stdout]   --> src/synchronizer.rs:97:41
[INFO] [stdout]    |
[INFO] [stdout] 97 |                     self.state.d.next = SyncSenderState::WaitDone.into();
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 97 -                     self.state.d.next = SyncSenderState::WaitDone.into();
[INFO] [stdout] 97 +                     self.state.d.next = SyncSenderState::WaitDone;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 97 -                     self.state.d.next = SyncSenderState::WaitDone.into();
[INFO] [stdout] 97 +                     self.state.d.next = <SyncSenderState as Into<_>>::into(SyncSenderState::WaitDone);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]   --> src/synchronizer.rs:98:42
[INFO] [stdout]    |
[INFO] [stdout] 98 |                     self.flag_out.next = false.into();
[INFO] [stdout]    |                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 98 -                     self.flag_out.next = false.into();
[INFO] [stdout] 98 +                     self.flag_out.next = false;
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 98 -                     self.flag_out.next = false.into();
[INFO] [stdout] 98 +                     self.flag_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncSenderState`
[INFO] [stdout]    --> src/synchronizer.rs:106:41
[INFO] [stdout]     |
[INFO] [stdout] 106 |                     self.state.d.next = SyncSenderState::Idle.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 106 -                     self.state.d.next = SyncSenderState::Idle.into();
[INFO] [stdout] 106 +                     self.state.d.next = SyncSenderState::Idle;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 106 -                     self.state.d.next = SyncSenderState::Idle.into();
[INFO] [stdout] 106 +                     self.state.d.next = <SyncSenderState as Into<_>>::into(SyncSenderState::Idle);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/synchronizer.rs:158:29
[INFO] [stdout]     |
[INFO] [stdout] 158 |         self.ack_out.next = false.into();
[INFO] [stdout]     |                             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 158 -         self.ack_out.next = false.into();
[INFO] [stdout] 158 +         self.ack_out.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 158 -         self.ack_out.next = false.into();
[INFO] [stdout] 158 +         self.ack_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/synchronizer.rs:161:36
[INFO] [stdout]     |
[INFO] [stdout] 161 |         self.update_delay.d.next = false.into();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 161 -         self.update_delay.d.next = false.into();
[INFO] [stdout] 161 +         self.update_delay.d.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 161 -         self.update_delay.d.next = false.into();
[INFO] [stdout] 161 +         self.update_delay.d.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncReceiverState`
[INFO] [stdout]    --> src/synchronizer.rs:166:41
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     self.state.d.next = SyncReceiverState::WaitDone.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 166 -                     self.state.d.next = SyncReceiverState::WaitDone.into();
[INFO] [stdout] 166 +                     self.state.d.next = SyncReceiverState::WaitDone;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 166 -                     self.state.d.next = SyncReceiverState::WaitDone.into();
[INFO] [stdout] 166 +                     self.state.d.next = <SyncReceiverState as Into<_>>::into(SyncReceiverState::WaitDone);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> src/synchronizer.rs:171:41
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     self.ack_out.next = false.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 171 -                     self.ack_out.next = false.into();
[INFO] [stdout] 171 +                     self.ack_out.next = false;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 171 -                     self.ack_out.next = false.into();
[INFO] [stdout] 171 +                     self.ack_out.next = <bool as Into<_>>::into(false);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/synchronizer.rs:173:40
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     self.hold.d.next = self.sig_cross.val().into();
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 173 -                     self.hold.d.next = self.sig_cross.val().into();
[INFO] [stdout] 173 +                     self.hold.d.next = self.sig_cross.val();
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 173 -                     self.hold.d.next = self.sig_cross.val().into();
[INFO] [stdout] 173 +                     self.hold.d.next = <T as Into<_>>::into(self.sig_cross.val());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `SyncReceiverState`
[INFO] [stdout]    --> src/synchronizer.rs:174:41
[INFO] [stdout]     |
[INFO] [stdout] 174 |                     self.state.d.next = SyncReceiverState::WaitSteady.into();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 174 -                     self.state.d.next = SyncReceiverState::WaitSteady.into();
[INFO] [stdout] 174 +                     self.state.d.next = SyncReceiverState::WaitSteady;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 174 -                     self.state.d.next = SyncReceiverState::WaitSteady.into();
[INFO] [stdout] 174 +                     self.state.d.next = <SyncReceiverState as Into<_>>::into(SyncReceiverState::WaitSteady);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust_hdl_lib_widgets` (lib test) due to 19 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3", kill_on_drop: false }`
[INFO] [stdout] 2becf58c3ba055692d3dfa2fef56bce6d6a37ddb1d1a64ae0b518282e5d51af3
