[INFO] cloning repository https://github.com/thepowersgang/rust-logiccircuit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/thepowersgang/rust-logiccircuit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthepowersgang%2Frust-logiccircuit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthepowersgang%2Frust-logiccircuit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 694d9bd1d92c220df3d8a52a4456741c8d035a2d
[INFO] checking thepowersgang/rust-logiccircuit against try#1baf923b9c3a455162afe43e18647f494c1a4b73 for pr-151510
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthepowersgang%2Frust-logiccircuit" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/thepowersgang/rust-logiccircuit
[INFO] finished tweaking git repo https://github.com/thepowersgang/rust-logiccircuit
[INFO] tweaked toml for git repo https://github.com/thepowersgang/rust-logiccircuit written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/thepowersgang/rust-logiccircuit on toolchain 1baf923b9c3a455162afe43e18647f494c1a4b73
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/thepowersgang/rust-logiccircuit already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking thepowersgang/rust-logiccircuit against try#1baf923b9c3a455162afe43e18647f494c1a4b73 for pr-151510
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthepowersgang%2Frust-logiccircuit" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/thepowersgang/rust-logiccircuit
[INFO] finished tweaking git repo https://github.com/thepowersgang/rust-logiccircuit
[INFO] tweaked toml for git repo https://github.com/thepowersgang/rust-logiccircuit written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/thepowersgang/rust-logiccircuit on toolchain 1baf923b9c3a455162afe43e18647f494c1a4b73
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/thepowersgang/rust-logiccircuit already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded env_logger v0.8.3
[INFO] [stderr]   Downloaded libc v0.2.91
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2197305dfd876bcb5225ba8107ba357cc5bb9fd517166e2c2ab6abba9e34d87b
[INFO] running `Command { std: "docker" "start" "-a" "2197305dfd876bcb5225ba8107ba357cc5bb9fd517166e2c2ab6abba9e34d87b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2197305dfd876bcb5225ba8107ba357cc5bb9fd517166e2c2ab6abba9e34d87b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2197305dfd876bcb5225ba8107ba357cc5bb9fd517166e2c2ab6abba9e34d87b", kill_on_drop: false }`
[INFO] [stdout] 2197305dfd876bcb5225ba8107ba357cc5bb9fd517166e2c2ab6abba9e34d87b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0d0b388e6e9f6cc0c98a0bab08085646c0f70015e3ba69515196e63c983da080
[INFO] running `Command { std: "docker" "start" "-a" "0d0b388e6e9f6cc0c98a0bab08085646c0f70015e3ba69515196e63c983da080", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling libc v0.2.91
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking regex-syntax v0.6.23
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking glob v0.3.0
[INFO] [stderr]     Checking getopts v0.2.21
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking regex v1.4.5
[INFO] [stderr]     Checking env_logger v0.8.3
[INFO] [stderr]     Checking logiccircuit v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cct_mesh/mod.rs:303:18
[INFO] [stdout]     |
[INFO] [stdout] 303 |             let mut ele = try!(::elements::create(name, &*params, inputs.len()));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:267:8
[INFO] [stdout]     |
[INFO] [stdout] 267 |             '1' ... '7' => {
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:279:7
[INFO] [stdout]     |
[INFO] [stdout] 279 |         '1' ... '9' => {
[INFO] [stdout]     |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:283:6
[INFO] [stdout]     |
[INFO] [stdout] 283 |         'a'...'z'|'A'...'Z'|'_' => {
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:283:16
[INFO] [stdout]     |
[INFO] [stdout] 283 |         'a'...'z'|'A'...'Z'|'_' => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `exp_enum`
[INFO] [stdout]   --> src/parse/mod.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | macro_rules! exp_enum{
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `parse_try`
[INFO] [stdout]   --> src/parse/mod.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | macro_rules! parse_try{
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/parse/mod.rs:526:58
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let limit = syntax_assert_get!(parser, TokNumber(v) => (v), "Expected number after #testcase");
[INFO] [stdout]     |                                                                ^ ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 526 -         let limit = syntax_assert_get!(parser, TokNumber(v) => (v), "Expected number after #testcase");
[INFO] [stdout] 526 +         let limit = syntax_assert_get!(parser, TokNumber(v) => v, "Expected number after #testcase");
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/parse/mod.rs:527:57
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let name = syntax_assert_get!(parser, TokString(v) => (v), "Expected test name after execution limit");
[INFO] [stdout]     |                                                               ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 527 -         let name = syntax_assert_get!(parser, TokString(v) => (v), "Expected test name after execution limit");
[INFO] [stdout] 527 +         let name = syntax_assert_get!(parser, TokString(v) => v, "Expected test name after execution limit");
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/elements.rs:579:72
[INFO] [stdout]     |
[INFO] [stdout] 579 |         let ofs = 1 + (self.bits as usize) + index * (self.bussize as usize);;
[INFO] [stdout]     |                                                                              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cct_mesh/mod.rs:303:18
[INFO] [stdout]     |
[INFO] [stdout] 303 |             let mut ele = try!(::elements::create(name, &*params, inputs.len()));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:267:8
[INFO] [stdout]     |
[INFO] [stdout] 267 |             '1' ... '7' => {
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:279:7
[INFO] [stdout]     |
[INFO] [stdout] 279 |         '1' ... '9' => {
[INFO] [stdout]     |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:283:6
[INFO] [stdout]     |
[INFO] [stdout] 283 |         'a'...'z'|'A'...'Z'|'_' => {
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/parse/lex.rs:283:16
[INFO] [stdout]     |
[INFO] [stdout] 283 |         'a'...'z'|'A'...'Z'|'_' => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `exp_enum`
[INFO] [stdout]   --> src/parse/mod.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | macro_rules! exp_enum{
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `parse_try`
[INFO] [stdout]   --> src/parse/mod.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | macro_rules! parse_try{
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/parse/mod.rs:526:58
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let limit = syntax_assert_get!(parser, TokNumber(v) => (v), "Expected number after #testcase");
[INFO] [stdout]     |                                                                ^ ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 526 -         let limit = syntax_assert_get!(parser, TokNumber(v) => (v), "Expected number after #testcase");
[INFO] [stdout] 526 +         let limit = syntax_assert_get!(parser, TokNumber(v) => v, "Expected number after #testcase");
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/parse/mod.rs:527:57
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let name = syntax_assert_get!(parser, TokString(v) => (v), "Expected test name after execution limit");
[INFO] [stdout]     |                                                               ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 527 -         let name = syntax_assert_get!(parser, TokString(v) => (v), "Expected test name after execution limit");
[INFO] [stdout] 527 +         let name = syntax_assert_get!(parser, TokString(v) => v, "Expected test name after execution limit");
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/elements.rs:579:72
[INFO] [stdout]     |
[INFO] [stdout] 579 |         let ofs = 1 + (self.bits as usize) + index * (self.bussize as usize);;
[INFO] [stdout]     |                                                                              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cct_mesh/mod.rs:123:20
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl Clone for Box<::elements::Element+'static>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl Clone for Box<dyn (::elements::Element+'static)>
[INFO] [stdout]     |                    +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cct_mesh/flat.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub inst: Box<::elements::Element+'static>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub inst: Box<dyn (::elements::Element+'static)>,
[INFO] [stdout]    |                   +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cct_mesh/mod.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 |     inst: Box<::elements::Element+'static>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     inst: Box<dyn (::elements::Element+'static)>,
[INFO] [stdout]    |               +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/parse/lex.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub type InStream<'a> = &'a mut (::std::iter::Iterator<Item=char> + 'a);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub type InStream<'a> = &'a mut (dyn (::std::iter::Iterator<Item=char> + 'a));
[INFO] [stdout]    |                                  +++++                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/elements.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn dup(&self) -> Box<Element+'static>;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn dup(&self) -> Box<dyn Element+'static>;
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cct_mesh/mod.rs:123:20
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl Clone for Box<::elements::Element+'static>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl Clone for Box<dyn (::elements::Element+'static)>
[INFO] [stdout]     |                    +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cct_mesh/flat.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub inst: Box<::elements::Element+'static>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub inst: Box<dyn (::elements::Element+'static)>,
[INFO] [stdout]    |                   +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cct_mesh/mod.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 |     inst: Box<::elements::Element+'static>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     inst: Box<dyn (::elements::Element+'static)>,
[INFO] [stdout]    |               +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/parse/lex.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub type InStream<'a> = &'a mut (::std::iter::Iterator<Item=char> + 'a);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub type InStream<'a> = &'a mut (dyn (::std::iter::Iterator<Item=char> + 'a));
[INFO] [stdout]    |                                  +++++                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cct_mesh/mod.rs:125:25
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn clone(&self) -> Box<::elements::Element+'static> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn clone(&self) -> Box<dyn (::elements::Element+'static)> {
[INFO] [stdout]     |                            +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/elements.rs:37:36
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub type NewEleResult = Result<Box<Element+'static>,String>;
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub type NewEleResult = Result<Box<dyn Element+'static>,String>;
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:117:23
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:167:23
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:211:23
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:254:23
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:303:23
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 | def_logic!{ ElementNXOR, false, |v:bool,i:bool| v^i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | def_logic!{ ElementNAND, true,  |v:bool,i:bool| v&i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 | def_logic!{ ElementNOR,  false, |v:bool,i:bool| v|i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 | def_logic!{ ElementXOR,  false, |v:bool,i:bool| v^i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 | def_logic!{ ElementAND,  true,  |v:bool,i:bool| v&i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 | def_logic!{ ElementOR,   false, |v:bool,i:bool| v|i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:402:23
[INFO] [stdout]     |
[INFO] [stdout] 402 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 402 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:444:23
[INFO] [stdout]     |
[INFO] [stdout] 444 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 444 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:502:23
[INFO] [stdout]     |
[INFO] [stdout] 502 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 502 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:571:23
[INFO] [stdout]     |
[INFO] [stdout] 571 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 571 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:624:23
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:672:23
[INFO] [stdout]     |
[INFO] [stdout] 672 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 672 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:744:23
[INFO] [stdout]     |
[INFO] [stdout] 744 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 744 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:808:23
[INFO] [stdout]     |
[INFO] [stdout] 808 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 808 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/elements.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn dup(&self) -> Box<Element+'static>;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn dup(&self) -> Box<dyn Element+'static>;
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cct_mesh/mod.rs:125:25
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn clone(&self) -> Box<::elements::Element+'static> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn clone(&self) -> Box<dyn (::elements::Element+'static)> {
[INFO] [stdout]     |                            +++++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/elements.rs:37:36
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub type NewEleResult = Result<Box<Element+'static>,String>;
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub type NewEleResult = Result<Box<dyn Element+'static>,String>;
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:117:23
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:167:23
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:211:23
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:254:23
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:303:23
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 303 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 | def_logic!{ ElementNXOR, false, |v:bool,i:bool| v^i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | def_logic!{ ElementNAND, true,  |v:bool,i:bool| v&i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 | def_logic!{ ElementNOR,  false, |v:bool,i:bool| v|i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 | def_logic!{ ElementXOR,  false, |v:bool,i:bool| v^i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 | def_logic!{ ElementAND,  true,  |v:bool,i:bool| v&i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:350:23
[INFO] [stdout]     |
[INFO] [stdout] 350 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 | def_logic!{ ElementOR,   false, |v:bool,i:bool| v|i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:402:23
[INFO] [stdout]     |
[INFO] [stdout] 402 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 402 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:444:23
[INFO] [stdout]     |
[INFO] [stdout] 444 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 444 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:502:23
[INFO] [stdout]     |
[INFO] [stdout] 502 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 502 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:571:23
[INFO] [stdout]     |
[INFO] [stdout] 571 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 571 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:624:23
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:672:23
[INFO] [stdout]     |
[INFO] [stdout] 672 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 672 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:744:23
[INFO] [stdout]     |
[INFO] [stdout] 744 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 744 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:808:23
[INFO] [stdout]     |
[INFO] [stdout] 808 |     fn dup(&self) -> Box<Element+'static> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 808 |     fn dup(&self) -> Box<dyn Element+'static> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:158:45
[INFO] [stdout]     |
[INFO] [stdout] 158 |         return Ok( Box::new(ElementENABLE) as Box<Element> );
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 158 |         return Ok( Box::new(ElementENABLE) as Box<dyn Element> );
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:168:34
[INFO] [stdout]     |
[INFO] [stdout] 168 |         Box::new(ElementENABLE) as Box<Element>
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 168 |         Box::new(ElementENABLE) as Box<dyn Element>
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:202:87
[INFO] [stdout]     |
[INFO] [stdout] 202 |         return Ok( Box::new(ElementPULSE { dir_is_falling: dir, last_value: false }) as Box<Element> );
[INFO] [stdout]     |                                                                                             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 202 |         return Ok( Box::new(ElementPULSE { dir_is_falling: dir, last_value: false }) as Box<dyn Element> );
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:212:33
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:245:96
[INFO] [stdout]     |
[INFO] [stdout] 245 |         return Ok( Box::new(ElementHOLD { hold_time: time, times: ::from_elem(n_inputs, 0) }) as Box<Element> );
[INFO] [stdout]     |                                                                                                      ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 245 |         return Ok( Box::new(ElementHOLD { hold_time: time, times: ::from_elem(n_inputs, 0) }) as Box<dyn Element> );
[INFO] [stdout]     |                                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:255:33
[INFO] [stdout]     |
[INFO] [stdout] 255 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:304:33
[INFO] [stdout]     |
[INFO] [stdout] 304 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 304 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 | def_logic!{ ElementNXOR, false, |v:bool,i:bool| v^i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 | def_logic!{ ElementNXOR, false, |v:bool,i:bool| v^i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | def_logic!{ ElementNAND, true,  |v:bool,i:bool| v&i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | def_logic!{ ElementNAND, true,  |v:bool,i:bool| v&i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 | def_logic!{ ElementNOR,  false, |v:bool,i:bool| v|i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 | def_logic!{ ElementNOR,  false, |v:bool,i:bool| v|i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 | def_logic!{ ElementXOR,  false, |v:bool,i:bool| v^i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 | def_logic!{ ElementXOR,  false, |v:bool,i:bool| v^i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 | def_logic!{ ElementAND,  true,  |v:bool,i:bool| v&i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 | def_logic!{ ElementAND,  true,  |v:bool,i:bool| v&i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 | def_logic!{ ElementOR,   false, |v:bool,i:bool| v|i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 | def_logic!{ ElementOR,   false, |v:bool,i:bool| v|i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:393:35
[INFO] [stdout]     |
[INFO] [stdout] 393 |         Ok( Box::new(ElementNOT) as Box<Element> )
[INFO] [stdout]     |                                         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 393 |         Ok( Box::new(ElementNOT) as Box<dyn Element> )
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:158:45
[INFO] [stdout]     |
[INFO] [stdout] 158 |         return Ok( Box::new(ElementENABLE) as Box<Element> );
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 158 |         return Ok( Box::new(ElementENABLE) as Box<dyn Element> );
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:403:31
[INFO] [stdout]     |
[INFO] [stdout] 403 |         Box::new(ElementNOT) as Box<Element>
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 403 |         Box::new(ElementNOT) as Box<dyn Element>
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:435:94
[INFO] [stdout]     |
[INFO] [stdout] 435 |         Ok( Box::new(ElementLATCH { vals: ::from_elem(size, false), ..Default::default() }) as Box<Element> )
[INFO] [stdout]     |                                                                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 435 |         Ok( Box::new(ElementLATCH { vals: ::from_elem(size, false), ..Default::default() }) as Box<dyn Element> )
[INFO] [stdout]     |                                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:168:34
[INFO] [stdout]     |
[INFO] [stdout] 168 |         Box::new(ElementENABLE) as Box<Element>
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 168 |         Box::new(ElementENABLE) as Box<dyn Element>
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:445:33
[INFO] [stdout]     |
[INFO] [stdout] 445 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 445 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:202:87
[INFO] [stdout]     |
[INFO] [stdout] 202 |         return Ok( Box::new(ElementPULSE { dir_is_falling: dir, last_value: false }) as Box<Element> );
[INFO] [stdout]     |                                                                                             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 202 |         return Ok( Box::new(ElementPULSE { dir_is_falling: dir, last_value: false }) as Box<dyn Element> );
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:212:33
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:245:96
[INFO] [stdout]     |
[INFO] [stdout] 245 |         return Ok( Box::new(ElementHOLD { hold_time: time, times: ::from_elem(n_inputs, 0) }) as Box<Element> );
[INFO] [stdout]     |                                                                                                      ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 245 |         return Ok( Box::new(ElementHOLD { hold_time: time, times: ::from_elem(n_inputs, 0) }) as Box<dyn Element> );
[INFO] [stdout]     |                                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:503:33
[INFO] [stdout]     |
[INFO] [stdout] 503 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 503 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:255:33
[INFO] [stdout]     |
[INFO] [stdout] 255 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:304:33
[INFO] [stdout]     |
[INFO] [stdout] 304 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 304 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:562:65
[INFO] [stdout]     |
[INFO] [stdout] 562 |         Ok( Box::new(ElementMUX{bits: bits, bussize: bussize}) as Box<Element> )
[INFO] [stdout]     |                                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 562 |         Ok( Box::new(ElementMUX{bits: bits, bussize: bussize}) as Box<dyn Element> )
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 | def_logic!{ ElementNXOR, false, |v:bool,i:bool| v^i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 | def_logic!{ ElementNXOR, false, |v:bool,i:bool| v^i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:572:33
[INFO] [stdout]     |
[INFO] [stdout] 572 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 572 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:614:49
[INFO] [stdout]     |
[INFO] [stdout] 614 |         Ok( Box::new(ElementDEMUX{bits: bits}) as Box<Element> )
[INFO] [stdout]     |                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 614 |         Ok( Box::new(ElementDEMUX{bits: bits}) as Box<dyn Element> )
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:625:33
[INFO] [stdout]     |
[INFO] [stdout] 625 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 625 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | def_logic!{ ElementNAND, true,  |v:bool,i:bool| v&i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | def_logic!{ ElementNAND, true,  |v:bool,i:bool| v&i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:663:78
[INFO] [stdout]     |
[INFO] [stdout] 663 |         return Ok( Box::new(ElementSEQUENCER { count: count, position: 0 }) as Box<Element> );
[INFO] [stdout]     |                                                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 663 |         return Ok( Box::new(ElementSEQUENCER { count: count, position: 0 }) as Box<dyn Element> );
[INFO] [stdout]     |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:673:33
[INFO] [stdout]     |
[INFO] [stdout] 673 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 673 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 | def_logic!{ ElementNOR,  false, |v:bool,i:bool| v|i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 | def_logic!{ ElementNOR,  false, |v:bool,i:bool| v|i, |v:bool| !v }
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:735:14
[INFO] [stdout]     |
[INFO] [stdout] 735 |             }) as Box<Element> )
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 735 |             }) as Box<dyn Element> )
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:745:33
[INFO] [stdout]     |
[INFO] [stdout] 745 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 745 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 | def_logic!{ ElementXOR,  false, |v:bool,i:bool| v^i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 | def_logic!{ ElementXOR,  false, |v:bool,i:bool| v^i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:795:14
[INFO] [stdout]     |
[INFO] [stdout] 795 |             }) as Box<Element> )
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 795 |             }) as Box<dyn Element> )
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 | def_logic!{ ElementAND,  true,  |v:bool,i:bool| v&i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 | def_logic!{ ElementAND,  true,  |v:bool,i:bool| v&i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:340:72
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Ok( Box::new($name { bussize: bussize, buscount: buscount }) as Box<Element> )
[INFO] [stdout]     |                                                                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 | def_logic!{ ElementOR,   false, |v:bool,i:bool| v|i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 | def_logic!{ ElementOR,   false, |v:bool,i:bool| v|i, |v| v }
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `def_logic` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:393:35
[INFO] [stdout]     |
[INFO] [stdout] 393 |         Ok( Box::new(ElementNOT) as Box<Element> )
[INFO] [stdout]     |                                         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 393 |         Ok( Box::new(ElementNOT) as Box<dyn Element> )
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:403:31
[INFO] [stdout]     |
[INFO] [stdout] 403 |         Box::new(ElementNOT) as Box<Element>
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 403 |         Box::new(ElementNOT) as Box<dyn Element>
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:435:94
[INFO] [stdout]     |
[INFO] [stdout] 435 |         Ok( Box::new(ElementLATCH { vals: ::from_elem(size, false), ..Default::default() }) as Box<Element> )
[INFO] [stdout]     |                                                                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 435 |         Ok( Box::new(ElementLATCH { vals: ::from_elem(size, false), ..Default::default() }) as Box<dyn Element> )
[INFO] [stdout]     |                                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:445:33
[INFO] [stdout]     |
[INFO] [stdout] 445 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 445 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:503:33
[INFO] [stdout]     |
[INFO] [stdout] 503 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 503 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:562:65
[INFO] [stdout]     |
[INFO] [stdout] 562 |         Ok( Box::new(ElementMUX{bits: bits, bussize: bussize}) as Box<Element> )
[INFO] [stdout]     |                                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 562 |         Ok( Box::new(ElementMUX{bits: bits, bussize: bussize}) as Box<dyn Element> )
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:572:33
[INFO] [stdout]     |
[INFO] [stdout] 572 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 572 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:614:49
[INFO] [stdout]     |
[INFO] [stdout] 614 |         Ok( Box::new(ElementDEMUX{bits: bits}) as Box<Element> )
[INFO] [stdout]     |                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 614 |         Ok( Box::new(ElementDEMUX{bits: bits}) as Box<dyn Element> )
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:625:33
[INFO] [stdout]     |
[INFO] [stdout] 625 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 625 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:663:78
[INFO] [stdout]     |
[INFO] [stdout] 663 |         return Ok( Box::new(ElementSEQUENCER { count: count, position: 0 }) as Box<Element> );
[INFO] [stdout]     |                                                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 663 |         return Ok( Box::new(ElementSEQUENCER { count: count, position: 0 }) as Box<dyn Element> );
[INFO] [stdout]     |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:673:33
[INFO] [stdout]     |
[INFO] [stdout] 673 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 673 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:735:14
[INFO] [stdout]     |
[INFO] [stdout] 735 |             }) as Box<Element> )
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 735 |             }) as Box<dyn Element> )
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:745:33
[INFO] [stdout]     |
[INFO] [stdout] 745 |         Box::new(self.clone()) as Box<Element>
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 745 |         Box::new(self.clone()) as Box<dyn Element>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/elements.rs:795:14
[INFO] [stdout]     |
[INFO] [stdout] 795 |             }) as Box<Element> )
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 795 |             }) as Box<dyn Element> )
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]   --> src/elements.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn finalise(&mut self, unit: &::cct_mesh::Unit) {}
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_unit`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_inputs`
[INFO] [stdout]    --> src/elements.rs:286:25
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn new(params: &[u64], n_inputs: usize) -> NewEleResult
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_inputs`
[INFO] [stdout]    --> src/elements.rs:299:24
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn get_outputs(&self, n_inputs: usize) -> usize {
[INFO] [stdout]     |                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]   --> src/elements.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn finalise(&mut self, unit: &::cct_mesh::Unit) {}
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_unit`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_inputs`
[INFO] [stdout]    --> src/elements.rs:286:25
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn new(params: &[u64], n_inputs: usize) -> NewEleResult
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_inputs`
[INFO] [stdout]    --> src/elements.rs:782:25
[INFO] [stdout]     |
[INFO] [stdout] 782 |     fn new(params: &[u64], n_inputs: usize) -> NewEleResult
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_inputs`
[INFO] [stdout]    --> src/elements.rs:299:24
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn get_outputs(&self, n_inputs: usize) -> usize {
[INFO] [stdout]     |                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ExecLimit` is never used
[INFO] [stdout]  --> src/cct_mesh/flat.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | type ExecLimit = u32;
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/cct_mesh/flat.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Node
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/cct_mesh/flat.rs:71:2
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct Breakpoint
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 70 | {
[INFO] [stdout] 71 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Breakpoint` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:46:20
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Err(f) => panic!(f.to_string()),
[INFO] [stdout]    |                          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Err(f) => panic!("{}", f.to_string()),
[INFO] [stdout]    |                          +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cct_mesh/mod.rs:680:20
[INFO] [stdout]     |
[INFO] [stdout] 680 |     pub fn iter_tests(&self) -> ::std::collections::hash_map::Iter<String,flat::Test>
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 680 |     pub fn iter_tests(&self) -> ::std::collections::hash_map::Iter<'_, String,flat::Test>
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cct_mesh/flat.rs:143:22
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn iter_asserts(&self) -> ::std::slice::Iter<::cct_mesh::flat::TestAssert>
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn iter_asserts(&self) -> ::std::slice::Iter<'_, ::cct_mesh::flat::TestAssert>
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/simulator.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(mesh: &::cct_mesh::flat::Mesh) -> Engine
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(mesh: &::cct_mesh::flat::Mesh) -> Engine<'_>
[INFO] [stdout]    |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_inputs`
[INFO] [stdout]    --> src/elements.rs:782:25
[INFO] [stdout]     |
[INFO] [stdout] 782 |     fn new(params: &[u64], n_inputs: usize) -> NewEleResult
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ExecLimit` is never used
[INFO] [stdout]  --> src/cct_mesh/flat.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | type ExecLimit = u32;
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/cct_mesh/flat.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Node
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/cct_mesh/flat.rs:71:2
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct Breakpoint
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 70 | {
[INFO] [stdout] 71 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Breakpoint` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:46:20
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Err(f) => panic!(f.to_string()),
[INFO] [stdout]    |                          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Err(f) => panic!("{}", f.to_string()),
[INFO] [stdout]    |                          +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cct_mesh/mod.rs:680:20
[INFO] [stdout]     |
[INFO] [stdout] 680 |     pub fn iter_tests(&self) -> ::std::collections::hash_map::Iter<String,flat::Test>
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 680 |     pub fn iter_tests(&self) -> ::std::collections::hash_map::Iter<'_, String,flat::Test>
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cct_mesh/flat.rs:143:22
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn iter_asserts(&self) -> ::std::slice::Iter<::cct_mesh::flat::TestAssert>
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn iter_asserts(&self) -> ::std::slice::Iter<'_, ::cct_mesh::flat::TestAssert>
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/simulator.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(mesh: &::cct_mesh::flat::Mesh) -> Engine
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(mesh: &::cct_mesh::flat::Mesh) -> Engine<'_>
[INFO] [stdout]    |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.44s
[INFO] running `Command { std: "docker" "inspect" "0d0b388e6e9f6cc0c98a0bab08085646c0f70015e3ba69515196e63c983da080", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d0b388e6e9f6cc0c98a0bab08085646c0f70015e3ba69515196e63c983da080", kill_on_drop: false }`
[INFO] [stdout] 0d0b388e6e9f6cc0c98a0bab08085646c0f70015e3ba69515196e63c983da080
