[INFO] cloning repository https://github.com/ProtoDef-io/protodefc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ProtoDef-io/protodefc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FProtoDef-io%2Fprotodefc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FProtoDef-io%2Fprotodefc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a17214e3c27f5438241b8ef3a82bfffd955e6dd6
[INFO] testing ProtoDef-io/protodefc against beta-2023-04-20 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FProtoDef-io%2Fprotodefc" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ProtoDef-io/protodefc on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/ProtoDef-io/protodefc
[INFO] finished tweaking git repo https://github.com/ProtoDef-io/protodefc
[INFO] tweaked toml for git repo https://github.com/ProtoDef-io/protodefc written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/ProtoDef-io/protodefc 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" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_json v1.0.1
[INFO] [stderr]   Downloaded num-bigint v0.2.0
[INFO] [stderr]   Downloaded json v0.11.6
[INFO] [stderr]   Downloaded num-integer v0.1.38
[INFO] [stderr]   Downloaded clap v2.23.3
[INFO] [stderr]   Downloaded Inflector v0.10.0
[INFO] [stderr]   Downloaded peg v0.5.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c7f2e488715fd4765ca2b169a5b70503d05ccc60ca0733a3a15e9035d72ca293
[INFO] running `Command { std: "docker" "start" "-a" "c7f2e488715fd4765ca2b169a5b70503d05ccc60ca0733a3a15e9035d72ca293", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c7f2e488715fd4765ca2b169a5b70503d05ccc60ca0733a3a15e9035d72ca293", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7f2e488715fd4765ca2b169a5b70503d05ccc60ca0733a3a15e9035d72ca293", kill_on_drop: false }`
[INFO] [stdout] c7f2e488715fd4765ca2b169a5b70503d05ccc60ca0733a3a15e9035d72ca293
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8db63e7b2d3b5d6345ac0d51b142a954d4f9590b2d6aa61b0ad511bc5a2b8c5a
[INFO] running `Command { std: "docker" "start" "-a" "8db63e7b2d3b5d6345ac0d51b142a954d4f9590b2d6aa61b0ad511bc5a2b8c5a", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.4
[INFO] [stderr]    Compiling num-integer v0.1.38
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling num-bigint v0.2.0
[INFO] [stderr]    Compiling serde v1.0.2
[INFO] [stderr]    Compiling dtoa v0.4.1
[INFO] [stderr]    Compiling itoa v0.3.1
[INFO] [stderr]    Compiling either v1.1.0
[INFO] [stderr]    Compiling num-traits v0.1.37
[INFO] [stderr]    Compiling itertools v0.5.10
[INFO] [stderr]    Compiling Inflector v0.10.0
[INFO] [stderr]    Compiling peg v0.5.2
[INFO] [stderr]    Compiling json v0.11.6
[INFO] [stderr]    Compiling lazy_static v0.2.8
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling error-chain v0.10.0
[INFO] [stderr]    Compiling matches v0.1.4
[INFO] [stderr]    Compiling protodefc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling serde_json v1.0.1
[INFO] [stderr]    Compiling toml v0.4.0
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[macro_use] extern crate matches;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Container`, `WeakContainer`
[INFO] [stdout]  --> src/ir/compilation_unit/mod.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ::rc_container::{Container, WeakContainer};
[INFO] [stdout]   |                      ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stdout]  --> src/ir/compilation_unit/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntegerSize`, `IntegerSpec`, `TypeSpecContainer`
[INFO] [stdout]  --> src/ir/spec/variant/array.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecContainer, WeakTypeSpecContainer, TypeSpecVariant,
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |                       ArraySpec, ArraySize, IntegerSpec, IntegerSize};
[INFO] [stdout]   |                                             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::compilation_unit::TypePath`
[INFO] [stdout]  --> src/ir/spec/variant/array.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ::ir::compilation_unit::TypePath;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `TypeKind`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:9:60
[INFO] [stdout]    |
[INFO] [stdout] 9  | use ::ir::compilation_unit::{TypePath, NamedTypeContainer, TypeKind, RelativeNSPath,
[INFO] [stdout]    |                                                            ^^^^^^^^
[INFO] [stdout] 10 |                              CanonicalNSPath};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `RelativeNSPath`, `TypePath`
[INFO] [stdout]  --> src/ir/spec/data.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ::ir::compilation_unit::{TypePath, RelativeNSPath, CanonicalNSPath};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EnumSpec`
[INFO] [stdout]  --> src/ir/type_spec/literal.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |             EnumSpec};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::std::marker::PhantomData`
[INFO] [stdout]  --> src/ir/name.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ::std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::nom::IResult`
[INFO] [stdout]  --> src/ir/name.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `pf_push`
[INFO] [stdout]   --> src/backend/common/formatter.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 | macro_rules! pf_push {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `pf_push_line`
[INFO] [stdout]   --> src/backend/common/formatter.rs:46:14
[INFO] [stdout]    |
[INFO] [stdout] 46 | macro_rules! pf_push_line {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stdout]  --> src/backend/imperative_base/deserialize.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EnumSpec`, `TypeSpecVariant`
[INFO] [stdout]  --> src/backend/imperative_base/reference.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecVariant, EnumSpec};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ir::compilation_unit::TypePath`
[INFO] [stdout]  --> src/backend/javascript/cu_to_js.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ir::compilation_unit::TypePath;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `to_value`
[INFO] [stdout]  --> src/backend/json_spec/mod.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::serde_json::{Value, to_value};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/mod.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/mod.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/array.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/union.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/container.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_spec/ast/mod.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::compilation_unit::{TypePath, CanonicalNSPath};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         try!
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:20:39
[INFO] [stdout]    |
[INFO] [stdout] 20 |         if self.expected.len() == 0 { try! (write! (fmt, "EOF")) ; } else if
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             try!
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:29:51
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let mut iter = self.expected.iter() ; try!
[INFO] [stdout]    |                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:33:15
[INFO] [stdout]    |
[INFO] [stdout] 33 |             { try! (write! (fmt, ", `{}`", escape_default(elem))) ; }
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:529
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...nge_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . m...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:543
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...ut , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( ...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:557
[INFO] [stdout]     |
[INFO] [stdout] 122 | ... match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:140:361
[INFO] [stdout]     |
[INFO] [stdout] 140 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ident`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/spec.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::super::ast::{Ident, Statement, Value};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RelativeNSPath`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ::ir::compilation_unit::{CompilationUnit, RelativeNSPath, CanonicalNSPath,
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntegerSize`, `IntegerSpec`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:6:40
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecVariant, IntegerSpec, IntegerSize};
[INFO] [stdout]   |                                        ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `unwrap_ok`
[INFO] [stdout]   --> src/lib.rs:48:14
[INFO] [stdout]    |
[INFO] [stdout] 48 | macro_rules! unwrap_ok {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `unwrap_error`
[INFO] [stdout]   --> src/lib.rs:60:14
[INFO] [stdout]    |
[INFO] [stdout] 60 | macro_rules! unwrap_error {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / error_chain! {
[INFO] [stdout] 7  | |     links {
[INFO] [stdout] 8  | |         //JsonParseError(
[INFO] [stdout] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/ir/compilation_unit/mod.rs:193:44
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<Iterator<Item = &'a NamedTypeContainer> + '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<dyn Iterator<Item = &'a NamedTypeContainer> + 'a> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn to_variant<'a>(&'a self) -> &'a TypeVariant {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn to_variant<'a>(&'a self) -> &'a dyn TypeVariant {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:55:56
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut TypeVariant {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut dyn TypeVariant {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/imperative_base/mod.rs:192:59
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a BaseCodegen {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a dyn BaseCodegen {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:11:43
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn build_reference_accessor(variant: &TypeVariant, data: &TypeData,
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn build_reference_accessor(variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:42:46
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn build_reference_accessor_inner(_variant: &TypeVariant, data: &TypeData,
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn build_reference_accessor_inner(_variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]   --> src/ir/spec/reference/mod.rs:32:51
[INFO] [stdout]    |
[INFO] [stdout] 32 |         for is_up in (0..(self.up)).map(|_| true).intersperse(false) {
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout]    = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]   --> src/ir/spec/reference/mod.rs:44:56
[INFO] [stdout]    |
[INFO] [stdout] 44 |         for item in self.items.iter().map(|i| Some(i)).intersperse(None) {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / error_chain! {
[INFO] [stdout] 7  | |     links {
[INFO] [stdout] 8  | |         //JsonParseError(
[INFO] [stdout] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/ir/compilation_unit/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             _ => None,
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ir/compilation_unit/mod.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 _ => (),
[INFO] [stdout]     |                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ir/compilation_unit/mod.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 _ => panic!(),
[INFO] [stdout]     |                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/imperative_base/mod.rs:199:9
[INFO] [stdout]     |
[INFO] [stdout] 199 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/javascript/ib_to_js.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:253:9
[INFO] [stdout]     |
[INFO] [stdout] 253 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:56:53
[INFO] [stdout]    |
[INFO] [stdout] 56 |             CompilePass::ResolveReferencedTypes(ref path, ref cu) => {
[INFO] [stdout]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:64:28
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/type_spec/literal.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn parse_binary(data: &BinarySpec, input_str: &str) -> Result<TypeSpecLiteralVariant> {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count_root_node`
[INFO] [stdout]    --> src/backend/imperative_base/deserialize.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let count_root_node = data.get_reference_root(self.count_handle).upgrade();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count_root_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_var`
[INFO] [stdout]    --> src/backend/imperative_base/deserialize.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let item_var = format!("array_{}_index", ident);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_spec`
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:81:27
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 ref node, ref type_spec, .. }) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_spec`
[INFO] [stdout]    --> src/backend/imperative_base/reference.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 ref type_spec, .. }) => {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_name`
[INFO] [stdout]    --> src/backend/javascript/ib_to_js.rs:126:54
[INFO] [stdout]     |
[INFO] [stdout] 126 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `default`
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:39:53
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stdout]    |                                  ^^^^^^^^^^^ help: try ignoring the field: `default: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enum_type`
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:39:66
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^ help: try ignoring the field: `enum_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_name_size_of`
[INFO] [stdout]   --> src/backend/rust/cu_to_rs.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let typ_name_size_of = format!("{}_size_of", typ_base_name);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_size_of`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_name_deserialize`
[INFO] [stdout]   --> src/backend/rust/cu_to_rs.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let typ_name_deserialize = format!("{}_deserialize", typ_base_name);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_deserialize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length_var`
[INFO] [stdout]   --> src/backend/python/ib_to_py.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 let length_var = format!("{}_length", index_var);
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_length_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_name`
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `native`
[INFO] [stdout]   --> src/backend/json_spec/mod.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |             TypeKind::Native(ref native) => {
[INFO] [stdout]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_native`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_data`
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let typ_data = &typ_inner.data;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/pass/resolve_reference.rs:213:23
[INFO] [stdout]     |
[INFO] [stdout] 213 | fn validate_causality(target: &mut ReferenceData) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ir/spec/variant/simple_scalar.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let mut data = TypeData::default();
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:40:17
[INFO] [stdout]    |
[INFO] [stdout] 40 |             let mut cases = cases.iter()
[INFO] [stdout]    |                 ----^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |             let mut cases: Vec<(Expr, Block)> = cases.iter()
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeakDefinedTypeSpecContainer` is never used
[INFO] [stdout]  --> src/ir/compilation_unit/defined_type_spec.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type WeakDefinedTypeSpecContainer = WeakContainer<DefinedTypeSpec>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `HexOne` and `HexTwo` are never constructed
[INFO] [stdout]   --> src/ir/type_spec/literal.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | enum ParseBinaryState {
[INFO] [stdout]    |      ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 86 |     HexOne(bool),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 87 |     HexTwo(u8, bool),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse` is never used
[INFO] [stdout]   --> src/ir/target_type.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl TargetType {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn parse(&self, raw: &str) -> Option<TargetTypeValue> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Integer`, `Bytes`, and `Enum` are never constructed
[INFO] [stdout]   --> src/ir/target_type.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum TargetTypeValue {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 38 |     Integer(u64),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 39 |     Bytes(Vec<u8>),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 40 |     Enum(String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TargetTypeValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_type` is never used
[INFO] [stdout]   --> src/ir/target_type.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl TargetTypeValue {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 43 |
[INFO] [stdout] 44 |     fn get_type(&self) -> TargetType {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `block` and `result_var` are never read
[INFO] [stdout]   --> src/backend/imperative_base/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct ResultBlock {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 23 |     block: Block,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 24 |     result_var: Var,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ResultBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_compile` is never used
[INFO] [stdout]  --> src/backend/imperative_base/tests/mod.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn test_compile(spec: &str) {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AssignBlock`, `Block`, and `Module` are never constructed
[INFO] [stdout]   --> src/backend/rust/builder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Statement {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     AssignBlock {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Block {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Module {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `block` is never used
[INFO] [stdout]   --> src/backend/rust/builder.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl Block {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn block(&mut self, block: Block) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_error` is never used
[INFO] [stdout]   --> src/frontend/protocol_spec/ast/parser.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn format_error(input: &str, error: pds::ParseError) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ir_to_spec` is never used
[INFO] [stdout]  --> src/frontend/protocol_spec/from_ir.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn ir_to_spec(type_name: String, typ: TypeContainer) -> Statement {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ir_to_spec_inner` is never used
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn ir_to_spec_inner(typ: TypeContainer) -> Statement {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 86 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4.52s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "8db63e7b2d3b5d6345ac0d51b142a954d4f9590b2d6aa61b0ad511bc5a2b8c5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8db63e7b2d3b5d6345ac0d51b142a954d4f9590b2d6aa61b0ad511bc5a2b8c5a", kill_on_drop: false }`
[INFO] [stdout] 8db63e7b2d3b5d6345ac0d51b142a954d4f9590b2d6aa61b0ad511bc5a2b8c5a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 906099794ed9c6c0317fb7a004552cbbc4d9ab8edfc35e612d8a5a633151a948
[INFO] running `Command { std: "docker" "start" "-a" "906099794ed9c6c0317fb7a004552cbbc4d9ab8edfc35e612d8a5a633151a948", kill_on_drop: false }`
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[macro_use] extern crate matches;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Container`, `WeakContainer`
[INFO] [stdout]  --> src/ir/compilation_unit/mod.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ::rc_container::{Container, WeakContainer};
[INFO] [stdout]   |                      ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stdout]  --> src/ir/compilation_unit/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntegerSize`, `IntegerSpec`, `TypeSpecContainer`
[INFO] [stdout]  --> src/ir/spec/variant/array.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecContainer, WeakTypeSpecContainer, TypeSpecVariant,
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |                       ArraySpec, ArraySize, IntegerSpec, IntegerSize};
[INFO] [stdout]   |                                             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::compilation_unit::TypePath`
[INFO] [stdout]  --> src/ir/spec/variant/array.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ::ir::compilation_unit::TypePath;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `TypeKind`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:9:60
[INFO] [stdout]    |
[INFO] [stdout] 9  | use ::ir::compilation_unit::{TypePath, NamedTypeContainer, TypeKind, RelativeNSPath,
[INFO] [stdout]    |                                                            ^^^^^^^^
[INFO] [stdout] 10 |                              CanonicalNSPath};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `RelativeNSPath`, `TypePath`
[INFO] [stdout]  --> src/ir/spec/data.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ::ir::compilation_unit::{TypePath, RelativeNSPath, CanonicalNSPath};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EnumSpec`
[INFO] [stdout]  --> src/ir/type_spec/literal.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |             EnumSpec};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::std::marker::PhantomData`
[INFO] [stdout]  --> src/ir/name.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ::std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::nom::IResult`
[INFO] [stdout]  --> src/ir/name.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `pf_push`
[INFO] [stdout]   --> src/backend/common/formatter.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 | macro_rules! pf_push {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `pf_push_line`
[INFO] [stdout]   --> src/backend/common/formatter.rs:46:14
[INFO] [stdout]    |
[INFO] [stdout] 46 | macro_rules! pf_push_line {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stdout]  --> src/backend/imperative_base/deserialize.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EnumSpec`, `TypeSpecVariant`
[INFO] [stdout]  --> src/backend/imperative_base/reference.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecVariant, EnumSpec};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ir::compilation_unit::TypePath`
[INFO] [stdout]  --> src/backend/javascript/cu_to_js.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ir::compilation_unit::TypePath;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `to_value`
[INFO] [stdout]  --> src/backend/json_spec/mod.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::serde_json::{Value, to_value};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/mod.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/mod.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/array.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/union.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/container.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_spec/ast/mod.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::compilation_unit::{TypePath, CanonicalNSPath};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         try!
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:20:39
[INFO] [stdout]    |
[INFO] [stdout] 20 |         if self.expected.len() == 0 { try! (write! (fmt, "EOF")) ; } else if
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             try!
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:29:51
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let mut iter = self.expected.iter() ; try!
[INFO] [stdout]    |                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:33:15
[INFO] [stdout]    |
[INFO] [stdout] 33 |             { try! (write! (fmt, ", `{}`", escape_default(elem))) ; }
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:529
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...nge_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . m...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:543
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...ut , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( ...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:557
[INFO] [stdout]     |
[INFO] [stdout] 122 | ... match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:140:361
[INFO] [stdout]     |
[INFO] [stdout] 140 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ident`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/spec.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::super::ast::{Ident, Statement, Value};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RelativeNSPath`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ::ir::compilation_unit::{CompilationUnit, RelativeNSPath, CanonicalNSPath,
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntegerSize`, `IntegerSpec`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:6:40
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecVariant, IntegerSpec, IntegerSize};
[INFO] [stdout]   |                                        ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `unwrap_ok`
[INFO] [stdout]   --> src/lib.rs:48:14
[INFO] [stdout]    |
[INFO] [stdout] 48 | macro_rules! unwrap_ok {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `unwrap_error`
[INFO] [stdout]   --> src/lib.rs:60:14
[INFO] [stdout]    |
[INFO] [stdout] 60 | macro_rules! unwrap_error {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / error_chain! {
[INFO] [stdout] 7  | |     links {
[INFO] [stdout] 8  | |         //JsonParseError(
[INFO] [stdout] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/ir/compilation_unit/mod.rs:193:44
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<Iterator<Item = &'a NamedTypeContainer> + '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<dyn Iterator<Item = &'a NamedTypeContainer> + 'a> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn to_variant<'a>(&'a self) -> &'a TypeVariant {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn to_variant<'a>(&'a self) -> &'a dyn TypeVariant {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:55:56
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut TypeVariant {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut dyn TypeVariant {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/imperative_base/mod.rs:192:59
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a BaseCodegen {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a dyn BaseCodegen {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:11:43
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn build_reference_accessor(variant: &TypeVariant, data: &TypeData,
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn build_reference_accessor(variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:42:46
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn build_reference_accessor_inner(_variant: &TypeVariant, data: &TypeData,
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn build_reference_accessor_inner(_variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]   --> src/ir/spec/reference/mod.rs:32:51
[INFO] [stdout]    |
[INFO] [stdout] 32 |         for is_up in (0..(self.up)).map(|_| true).intersperse(false) {
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout]    = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]   --> src/ir/spec/reference/mod.rs:44:56
[INFO] [stdout]    |
[INFO] [stdout] 44 |         for item in self.items.iter().map(|i| Some(i)).intersperse(None) {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / error_chain! {
[INFO] [stdout] 7  | |     links {
[INFO] [stdout] 8  | |         //JsonParseError(
[INFO] [stdout] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/ir/compilation_unit/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             _ => None,
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ir/compilation_unit/mod.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 _ => (),
[INFO] [stdout]     |                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ir/compilation_unit/mod.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 _ => panic!(),
[INFO] [stdout]     |                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/imperative_base/mod.rs:199:9
[INFO] [stdout]     |
[INFO] [stdout] 199 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/javascript/ib_to_js.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:253:9
[INFO] [stdout]     |
[INFO] [stdout] 253 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:56:53
[INFO] [stdout]    |
[INFO] [stdout] 56 |             CompilePass::ResolveReferencedTypes(ref path, ref cu) => {
[INFO] [stdout]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:64:28
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/type_spec/literal.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn parse_binary(data: &BinarySpec, input_str: &str) -> Result<TypeSpecLiteralVariant> {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count_root_node`
[INFO] [stdout]    --> src/backend/imperative_base/deserialize.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let count_root_node = data.get_reference_root(self.count_handle).upgrade();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count_root_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_var`
[INFO] [stdout]    --> src/backend/imperative_base/deserialize.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let item_var = format!("array_{}_index", ident);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_spec`
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:81:27
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 ref node, ref type_spec, .. }) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_spec`
[INFO] [stdout]    --> src/backend/imperative_base/reference.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 ref type_spec, .. }) => {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_name`
[INFO] [stdout]    --> src/backend/javascript/ib_to_js.rs:126:54
[INFO] [stdout]     |
[INFO] [stdout] 126 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `default`
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:39:53
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stdout]    |                                  ^^^^^^^^^^^ help: try ignoring the field: `default: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enum_type`
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:39:66
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^ help: try ignoring the field: `enum_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_name_size_of`
[INFO] [stdout]   --> src/backend/rust/cu_to_rs.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let typ_name_size_of = format!("{}_size_of", typ_base_name);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_size_of`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_name_deserialize`
[INFO] [stdout]   --> src/backend/rust/cu_to_rs.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let typ_name_deserialize = format!("{}_deserialize", typ_base_name);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_deserialize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length_var`
[INFO] [stdout]   --> src/backend/python/ib_to_py.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 let length_var = format!("{}_length", index_var);
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_length_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_name`
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `native`
[INFO] [stdout]   --> src/backend/json_spec/mod.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |             TypeKind::Native(ref native) => {
[INFO] [stdout]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_native`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_data`
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let typ_data = &typ_inner.data;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/pass/resolve_reference.rs:213:23
[INFO] [stdout]     |
[INFO] [stdout] 213 | fn validate_causality(target: &mut ReferenceData) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ir/spec/variant/simple_scalar.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let mut data = TypeData::default();
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:40:17
[INFO] [stdout]    |
[INFO] [stdout] 40 |             let mut cases = cases.iter()
[INFO] [stdout]    |                 ----^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |             let mut cases: Vec<(Expr, Block)> = cases.iter()
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeakDefinedTypeSpecContainer` is never used
[INFO] [stdout]  --> src/ir/compilation_unit/defined_type_spec.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type WeakDefinedTypeSpecContainer = WeakContainer<DefinedTypeSpec>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `HexOne` and `HexTwo` are never constructed
[INFO] [stdout]   --> src/ir/type_spec/literal.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | enum ParseBinaryState {
[INFO] [stdout]    |      ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 86 |     HexOne(bool),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 87 |     HexTwo(u8, bool),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse` is never used
[INFO] [stdout]   --> src/ir/target_type.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl TargetType {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn parse(&self, raw: &str) -> Option<TargetTypeValue> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Integer`, `Bytes`, and `Enum` are never constructed
[INFO] [stdout]   --> src/ir/target_type.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum TargetTypeValue {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 38 |     Integer(u64),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 39 |     Bytes(Vec<u8>),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 40 |     Enum(String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TargetTypeValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_type` is never used
[INFO] [stdout]   --> src/ir/target_type.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl TargetTypeValue {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 43 |
[INFO] [stdout] 44 |     fn get_type(&self) -> TargetType {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `block` and `result_var` are never read
[INFO] [stdout]   --> src/backend/imperative_base/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct ResultBlock {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 23 |     block: Block,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 24 |     result_var: Var,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ResultBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_compile` is never used
[INFO] [stdout]  --> src/backend/imperative_base/tests/mod.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn test_compile(spec: &str) {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AssignBlock`, `Block`, and `Module` are never constructed
[INFO] [stdout]   --> src/backend/rust/builder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Statement {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     AssignBlock {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Block {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Module {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `block` is never used
[INFO] [stdout]   --> src/backend/rust/builder.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl Block {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn block(&mut self, block: Block) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_error` is never used
[INFO] [stdout]   --> src/frontend/protocol_spec/ast/parser.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn format_error(input: &str, error: pds::ParseError) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ir_to_spec` is never used
[INFO] [stdout]  --> src/frontend/protocol_spec/from_ir.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn ir_to_spec(type_name: String, typ: TypeContainer) -> Statement {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ir_to_spec_inner` is never used
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn ir_to_spec_inner(typ: TypeContainer) -> Statement {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 86 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling protodefc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `protodefc::ir::spec::TypeContainer`
[INFO] [stdout]  --> tests/spec_compile.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use protodefc::ir::spec::TypeContainer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[macro_use] extern crate matches;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Container`, `WeakContainer`
[INFO] [stdout]  --> src/ir/compilation_unit/mod.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ::rc_container::{Container, WeakContainer};
[INFO] [stdout]   |                      ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stdout]  --> src/ir/compilation_unit/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntegerSize`, `IntegerSpec`, `TypeSpecContainer`
[INFO] [stdout]  --> src/ir/spec/variant/array.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecContainer, WeakTypeSpecContainer, TypeSpecVariant,
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |                       ArraySpec, ArraySize, IntegerSpec, IntegerSize};
[INFO] [stdout]   |                                             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::compilation_unit::TypePath`
[INFO] [stdout]  --> src/ir/spec/variant/array.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ::ir::compilation_unit::TypePath;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `TypeKind`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:9:60
[INFO] [stdout]    |
[INFO] [stdout] 9  | use ::ir::compilation_unit::{TypePath, NamedTypeContainer, TypeKind, RelativeNSPath,
[INFO] [stdout]    |                                                            ^^^^^^^^
[INFO] [stdout] 10 |                              CanonicalNSPath};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `RelativeNSPath`, `TypePath`
[INFO] [stdout]  --> src/ir/spec/data.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ::ir::compilation_unit::{TypePath, RelativeNSPath, CanonicalNSPath};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EnumSpec`
[INFO] [stdout]  --> src/ir/type_spec/literal.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |             EnumSpec};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::std::marker::PhantomData`
[INFO] [stdout]  --> src/ir/name.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ::std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::nom::IResult`
[INFO] [stdout]  --> src/ir/name.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `pf_push`
[INFO] [stdout]   --> src/backend/common/formatter.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 | macro_rules! pf_push {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `pf_push_line`
[INFO] [stdout]   --> src/backend/common/formatter.rs:46:14
[INFO] [stdout]    |
[INFO] [stdout] 46 | macro_rules! pf_push_line {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stdout]  --> src/backend/imperative_base/deserialize.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EnumSpec`, `TypeSpecVariant`
[INFO] [stdout]  --> src/backend/imperative_base/reference.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecVariant, EnumSpec};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ir::compilation_unit::TypePath`
[INFO] [stdout]  --> src/backend/javascript/cu_to_js.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ir::compilation_unit::TypePath;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `to_value`
[INFO] [stdout]  --> src/backend/json_spec/mod.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::serde_json::{Value, to_value};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/mod.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/mod.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/array.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/union.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_json/variants/container.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalNSPath`, `TypePath`
[INFO] [stdout]  --> src/frontend/protocol_spec/ast/mod.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ::ir::compilation_unit::{TypePath, CanonicalNSPath};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         try!
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:20:39
[INFO] [stdout]    |
[INFO] [stdout] 20 |         if self.expected.len() == 0 { try! (write! (fmt, "EOF")) ; } else if
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             try!
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:29:51
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let mut iter = self.expected.iter() ; try!
[INFO] [stdout]    |                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:33:15
[INFO] [stdout]    |
[INFO] [stdout] 33 |             { try! (write! (fmt, ", `{}`", escape_default(elem))) ; }
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:529
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...nge_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . m...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:543
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...ut , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( ...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:557
[INFO] [stdout]     |
[INFO] [stdout] 122 | ... match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:140:361
[INFO] [stdout]     |
[INFO] [stdout] 140 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::ir_to_spec`
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |     use super::ir_to_spec;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::protocol_spec::ast::printer::print`
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 97 |     use self::protocol_spec::ast::printer::print;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::protocol_spec::ast::Block`
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |     use self::protocol_spec::ast::Block;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ident`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/spec.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::super::ast::{Ident, Statement, Value};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RelativeNSPath`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ::ir::compilation_unit::{CompilationUnit, RelativeNSPath, CanonicalNSPath,
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntegerSize`, `IntegerSpec`
[INFO] [stdout]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:6:40
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ::ir::type_spec::{TypeSpecVariant, IntegerSpec, IntegerSize};
[INFO] [stdout]   |                                        ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `unwrap_ok`
[INFO] [stdout]   --> src/lib.rs:48:14
[INFO] [stdout]    |
[INFO] [stdout] 48 | macro_rules! unwrap_ok {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `unwrap_error`
[INFO] [stdout]   --> src/lib.rs:60:14
[INFO] [stdout]    |
[INFO] [stdout] 60 | macro_rules! unwrap_error {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / error_chain! {
[INFO] [stdout] 7  | |     links {
[INFO] [stdout] 8  | |         //JsonParseError(
[INFO] [stdout] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/ir/compilation_unit/mod.rs:193:44
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<Iterator<Item = &'a NamedTypeContainer> + '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<dyn Iterator<Item = &'a NamedTypeContainer> + 'a> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn to_variant<'a>(&'a self) -> &'a TypeVariant {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn to_variant<'a>(&'a self) -> &'a dyn TypeVariant {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:55:56
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut TypeVariant {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut dyn TypeVariant {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/imperative_base/mod.rs:192:59
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a BaseCodegen {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a dyn BaseCodegen {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:11:43
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn build_reference_accessor(variant: &TypeVariant, data: &TypeData,
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn build_reference_accessor(variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:42:46
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn build_reference_accessor_inner(_variant: &TypeVariant, data: &TypeData,
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn build_reference_accessor_inner(_variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]   --> src/ir/spec/reference/mod.rs:32:51
[INFO] [stdout]    |
[INFO] [stdout] 32 |         for is_up in (0..(self.up)).map(|_| true).intersperse(false) {
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout]    = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]   --> src/ir/spec/reference/mod.rs:44:56
[INFO] [stdout]    |
[INFO] [stdout] 44 |         for item in self.items.iter().map(|i| Some(i)).intersperse(None) {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / error_chain! {
[INFO] [stdout] 7  | |     links {
[INFO] [stdout] 8  | |         //JsonParseError(
[INFO] [stdout] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/ir/compilation_unit/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             _ => None,
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ir/compilation_unit/mod.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 _ => (),
[INFO] [stdout]     |                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ir/compilation_unit/mod.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 _ => panic!(),
[INFO] [stdout]     |                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/imperative_base/mod.rs:199:9
[INFO] [stdout]     |
[INFO] [stdout] 199 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/javascript/ib_to_js.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:253:9
[INFO] [stdout]     |
[INFO] [stdout] 253 |         _ => unimplemented!(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/ir/spec/variant/simple_scalar.rs:56:53
[INFO] [stdout]    |
[INFO] [stdout] 56 |             CompilePass::ResolveReferencedTypes(ref path, ref cu) => {
[INFO] [stdout]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/spec/variant/mod.rs:64:28
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ir/type_spec/literal.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn parse_binary(data: &BinarySpec, input_str: &str) -> Result<TypeSpecLiteralVariant> {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count_root_node`
[INFO] [stdout]    --> src/backend/imperative_base/deserialize.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let count_root_node = data.get_reference_root(self.count_handle).upgrade();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count_root_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_var`
[INFO] [stdout]    --> src/backend/imperative_base/deserialize.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let item_var = format!("array_{}_index", ident);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_spec`
[INFO] [stdout]   --> src/backend/imperative_base/reference.rs:81:27
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 ref node, ref type_spec, .. }) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_spec`
[INFO] [stdout]    --> src/backend/imperative_base/reference.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 ref type_spec, .. }) => {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_name`
[INFO] [stdout]    --> src/backend/javascript/ib_to_js.rs:126:54
[INFO] [stdout]     |
[INFO] [stdout] 126 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `default`
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:39:53
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stdout]    |                                  ^^^^^^^^^^^ help: try ignoring the field: `default: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enum_type`
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:39:66
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^ help: try ignoring the field: `enum_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_name_size_of`
[INFO] [stdout]   --> src/backend/rust/cu_to_rs.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let typ_name_size_of = format!("{}_size_of", typ_base_name);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_size_of`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_name_deserialize`
[INFO] [stdout]   --> src/backend/rust/cu_to_rs.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let typ_name_deserialize = format!("{}_deserialize", typ_base_name);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_deserialize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length_var`
[INFO] [stdout]   --> src/backend/python/ib_to_py.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 let length_var = format!("{}_length", index_var);
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_length_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_name`
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:113:54
[INFO] [stdout]     |
[INFO] [stdout] 113 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `native`
[INFO] [stdout]   --> src/backend/json_spec/mod.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |             TypeKind::Native(ref native) => {
[INFO] [stdout]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_native`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ_data`
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let typ_data = &typ_inner.data;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/pass/resolve_reference.rs:213:23
[INFO] [stdout]     |
[INFO] [stdout] 213 | fn validate_causality(target: &mut ReferenceData) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ir/spec/variant/simple_scalar.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let mut data = TypeData::default();
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/backend/rust/ib_to_rs.rs:40:17
[INFO] [stdout]    |
[INFO] [stdout] 40 |             let mut cases = cases.iter()
[INFO] [stdout]    |                 ----^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend/python/ib_to_py.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |             let mut cases: Vec<(Expr, Block)> = cases.iter()
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeakDefinedTypeSpecContainer` is never used
[INFO] [stdout]  --> src/ir/compilation_unit/defined_type_spec.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type WeakDefinedTypeSpecContainer = WeakContainer<DefinedTypeSpec>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `HexOne` and `HexTwo` are never constructed
[INFO] [stdout]   --> src/ir/type_spec/literal.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | enum ParseBinaryState {
[INFO] [stdout]    |      ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 86 |     HexOne(bool),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 87 |     HexTwo(u8, bool),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse` is never used
[INFO] [stdout]   --> src/ir/target_type.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl TargetType {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn parse(&self, raw: &str) -> Option<TargetTypeValue> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Integer`, `Bytes`, and `Enum` are never constructed
[INFO] [stdout]   --> src/ir/target_type.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum TargetTypeValue {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 38 |     Integer(u64),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 39 |     Bytes(Vec<u8>),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 40 |     Enum(String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TargetTypeValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_type` is never used
[INFO] [stdout]   --> src/ir/target_type.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl TargetTypeValue {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 43 |
[INFO] [stdout] 44 |     fn get_type(&self) -> TargetType {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `block` and `result_var` are never read
[INFO] [stdout]   --> src/backend/imperative_base/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct ResultBlock {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 23 |     block: Block,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 24 |     result_var: Var,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ResultBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AssignBlock`, `Block`, and `Module` are never constructed
[INFO] [stdout]   --> src/backend/rust/builder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Statement {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     AssignBlock {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Block {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Module {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `block` is never used
[INFO] [stdout]   --> src/backend/rust/builder.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl Block {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn block(&mut self, block: Block) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_error` is never used
[INFO] [stdout]   --> src/frontend/protocol_spec/ast/parser.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn format_error(input: &str, error: pds::ParseError) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ir_to_spec` is never used
[INFO] [stdout]  --> src/frontend/protocol_spec/from_ir.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn ir_to_spec(type_name: String, typ: TypeContainer) -> Statement {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ir_to_spec_inner` is never used
[INFO] [stdout]   --> src/frontend/protocol_spec/from_ir.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn ir_to_spec_inner(typ: TypeContainer) -> Statement {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 88 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 1.42s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "906099794ed9c6c0317fb7a004552cbbc4d9ab8edfc35e612d8a5a633151a948", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "906099794ed9c6c0317fb7a004552cbbc4d9ab8edfc35e612d8a5a633151a948", kill_on_drop: false }`
[INFO] [stdout] 906099794ed9c6c0317fb7a004552cbbc4d9ab8edfc35e612d8a5a633151a948
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 08fa498072a93fa76788b4157e4e14bbd3c3d6bbae1fe037071e18e9d2a38287
[INFO] running `Command { std: "docker" "start" "-a" "08fa498072a93fa76788b4157e4e14bbd3c3d6bbae1fe037071e18e9d2a38287", kill_on_drop: false }`
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | #[macro_use] extern crate matches;
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Container`, `WeakContainer`
[INFO] [stderr]  --> src/ir/compilation_unit/mod.rs:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 | use ::rc_container::{Container, WeakContainer};
[INFO] [stderr]   |                      ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stderr]  --> src/ir/compilation_unit/mod.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `IntegerSize`, `IntegerSpec`, `TypeSpecContainer`
[INFO] [stderr]  --> src/ir/spec/variant/array.rs:6:23
[INFO] [stderr]   |
[INFO] [stderr] 6 | use ::ir::type_spec::{TypeSpecContainer, WeakTypeSpecContainer, TypeSpecVariant,
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 7 |                       ArraySpec, ArraySize, IntegerSpec, IntegerSize};
[INFO] [stderr]   |                                             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::ir::compilation_unit::TypePath`
[INFO] [stderr]  --> src/ir/spec/variant/array.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use ::ir::compilation_unit::TypePath;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CanonicalNSPath`, `TypeKind`
[INFO] [stderr]   --> src/ir/spec/variant/simple_scalar.rs:9:60
[INFO] [stderr]    |
[INFO] [stderr] 9  | use ::ir::compilation_unit::{TypePath, NamedTypeContainer, TypeKind, RelativeNSPath,
[INFO] [stderr]    |                                                            ^^^^^^^^
[INFO] [stderr] 10 |                              CanonicalNSPath};
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CanonicalNSPath`, `RelativeNSPath`, `TypePath`
[INFO] [stderr]  --> src/ir/spec/data.rs:1:30
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ::ir::compilation_unit::{TypePath, RelativeNSPath, CanonicalNSPath};
[INFO] [stderr]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `EnumSpec`
[INFO] [stderr]  --> src/ir/type_spec/literal.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |             EnumSpec};
[INFO] [stderr]   |             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::std::marker::PhantomData`
[INFO] [stderr]  --> src/ir/name.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ::std::marker::PhantomData;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::nom::IResult`
[INFO] [stderr]  --> src/ir/name.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use ::nom::IResult;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition: `pf_push`
[INFO] [stderr]   --> src/backend/common/formatter.rs:41:14
[INFO] [stderr]    |
[INFO] [stderr] 41 | macro_rules! pf_push {
[INFO] [stderr]    |              ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition: `pf_push_line`
[INFO] [stderr]   --> src/backend/common/formatter.rs:46:14
[INFO] [stderr]    |
[INFO] [stderr] 46 | macro_rules! pf_push_line {
[INFO] [stderr]    |              ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::ir::spec::data::ReferenceAccessTime`
[INFO] [stderr]  --> src/backend/imperative_base/deserialize.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use ::ir::spec::data::ReferenceAccessTime;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `EnumSpec`, `TypeSpecVariant`
[INFO] [stderr]  --> src/backend/imperative_base/reference.rs:6:23
[INFO] [stderr]   |
[INFO] [stderr] 6 | use ::ir::type_spec::{TypeSpecVariant, EnumSpec};
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ir::compilation_unit::TypePath`
[INFO] [stderr]  --> src/backend/javascript/cu_to_js.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ir::compilation_unit::TypePath;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `to_value`
[INFO] [stderr]  --> src/backend/json_spec/mod.rs:6:27
[INFO] [stderr]   |
[INFO] [stderr] 6 | use ::serde_json::{Value, to_value};
[INFO] [stderr]   |                           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypePath`
[INFO] [stderr]  --> src/frontend/protocol_json/mod.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stderr]   |                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypePath`
[INFO] [stderr]  --> src/frontend/protocol_json/variants/mod.rs:6:30
[INFO] [stderr]   |
[INFO] [stderr] 6 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stderr]   |                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypePath`
[INFO] [stderr]  --> src/frontend/protocol_json/variants/array.rs:2:30
[INFO] [stderr]   |
[INFO] [stderr] 2 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stderr]   |                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypePath`
[INFO] [stderr]  --> src/frontend/protocol_json/variants/union.rs:4:30
[INFO] [stderr]   |
[INFO] [stderr] 4 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stderr]   |                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypePath`
[INFO] [stderr]  --> src/frontend/protocol_json/variants/container.rs:7:30
[INFO] [stderr]   |
[INFO] [stderr] 7 | use ::ir::compilation_unit::{TypePath, RelativeNSPath};
[INFO] [stderr]   |                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CanonicalNSPath`, `TypePath`
[INFO] [stderr]  --> src/frontend/protocol_spec/ast/mod.rs:4:30
[INFO] [stderr]   |
[INFO] [stderr] 4 | use ::ir::compilation_unit::{TypePath, CanonicalNSPath};
[INFO] [stderr]   |                              ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |         try!
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:20:39
[INFO] [stderr]    |
[INFO] [stderr] 20 |         if self.expected.len() == 0 { try! (write! (fmt, "EOF")) ; } else if
[INFO] [stderr]    |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:23:13
[INFO] [stderr]    |
[INFO] [stderr] 23 |             try!
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:29:51
[INFO] [stderr]    |
[INFO] [stderr] 29 |             let mut iter = self.expected.iter() ; try!
[INFO] [stderr]    |                                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:33:15
[INFO] [stderr]    |
[INFO] [stderr] 33 |             { try! (write! (fmt, ", `{}`", escape_default(elem))) ; }
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:529
[INFO] [stderr]     |
[INFO] [stderr] 122 | ...nge_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . m...
[INFO] [stderr]     |                                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:543
[INFO] [stderr]     |
[INFO] [stderr] 122 | ...ut , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( ...
[INFO] [stderr]     |                                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:122:557
[INFO] [stderr]     |
[INFO] [stderr] 122 | ... match __ch { '0' ... '9' | 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a...
[INFO] [stderr]     |                                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/target/debug/build/protodefc-7da4b22d30985270/out/pds.rs:140:361
[INFO] [stderr]     |
[INFO] [stderr] 140 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[INFO] [stderr]     |                                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Ident`
[INFO] [stderr]  --> src/frontend/protocol_spec/to_ir/spec.rs:7:25
[INFO] [stderr]   |
[INFO] [stderr] 7 | use super::super::ast::{Ident, Statement, Value};
[INFO] [stderr]   |                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RelativeNSPath`
[INFO] [stderr]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:3:47
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ::ir::compilation_unit::{CompilationUnit, RelativeNSPath, CanonicalNSPath,
[INFO] [stderr]   |                                               ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `IntegerSize`, `IntegerSpec`
[INFO] [stderr]  --> src/frontend/protocol_spec/to_ir/compilation_unit.rs:6:40
[INFO] [stderr]   |
[INFO] [stderr] 6 | use ::ir::type_spec::{TypeSpecVariant, IntegerSpec, IntegerSize};
[INFO] [stderr]   |                                        ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition: `unwrap_ok`
[INFO] [stderr]   --> src/lib.rs:48:14
[INFO] [stderr]    |
[INFO] [stderr] 48 | macro_rules! unwrap_ok {
[INFO] [stderr]    |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition: `unwrap_error`
[INFO] [stderr]   --> src/lib.rs:60:14
[INFO] [stderr]    |
[INFO] [stderr] 60 | macro_rules! unwrap_error {
[INFO] [stderr]    |              ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/errors.rs:6:1
[INFO] [stderr]    |
[INFO] [stderr] 6  | / error_chain! {
[INFO] [stderr] 7  | |     links {
[INFO] [stderr] 8  | |         //JsonParseError(
[INFO] [stderr] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stderr] ...  |
[INFO] [stderr] 27 | |     }
[INFO] [stderr] 28 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ir/compilation_unit/mod.rs:193:44
[INFO] [stderr]     |
[INFO] [stderr] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<Iterator<Item = &'a NamedTypeContainer> + 'a> {
[INFO] [stderr]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 193 |     pub fn specs_iter<'a>(&'a self) -> Box<dyn Iterator<Item = &'a NamedTypeContainer> + 'a> {
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ir/spec/variant/mod.rs:46:44
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn to_variant<'a>(&'a self) -> &'a TypeVariant {
[INFO] [stderr]    |                                            ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn to_variant<'a>(&'a self) -> &'a dyn TypeVariant {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ir/spec/variant/mod.rs:55:56
[INFO] [stderr]    |
[INFO] [stderr] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut TypeVariant {
[INFO] [stderr]    |                                                        ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 55 |     pub fn to_variant_mut<'a>(&'a mut self) -> &'a mut dyn TypeVariant {
[INFO] [stderr]    |                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/backend/imperative_base/mod.rs:192:59
[INFO] [stderr]     |
[INFO] [stderr] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a BaseCodegen {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 192 | fn codegen_for_type<'a>(typ: &'a ::ir::spec::Type) -> &'a dyn BaseCodegen {
[INFO] [stderr]     |                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/backend/imperative_base/reference.rs:11:43
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn build_reference_accessor(variant: &TypeVariant, data: &TypeData,
[INFO] [stderr]    |                                           ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn build_reference_accessor(variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stderr]    |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/backend/imperative_base/reference.rs:42:46
[INFO] [stderr]    |
[INFO] [stderr] 42 | fn build_reference_accessor_inner(_variant: &TypeVariant, data: &TypeData,
[INFO] [stderr]    |                                              ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 42 | fn build_reference_accessor_inner(_variant: &dyn TypeVariant, data: &TypeData,
[INFO] [stderr]    |                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: a method with this name may be added to the standard library in the future
[INFO] [stderr]   --> src/ir/spec/reference/mod.rs:32:51
[INFO] [stderr]    |
[INFO] [stderr] 32 |         for is_up in (0..(self.up)).map(|_| true).intersperse(false) {
[INFO] [stderr]    |                                                   ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stderr]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stderr]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stderr]    = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: a method with this name may be added to the standard library in the future
[INFO] [stderr]   --> src/ir/spec/reference/mod.rs:44:56
[INFO] [stderr]    |
[INFO] [stderr] 44 |         for item in self.items.iter().map(|i| Some(i)).intersperse(None) {
[INFO] [stderr]    |                                                        ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stderr]    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stderr]    = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stderr]   --> src/errors.rs:6:1
[INFO] [stderr]    |
[INFO] [stderr] 6  | / error_chain! {
[INFO] [stderr] 7  | |     links {
[INFO] [stderr] 8  | |         //JsonParseError(
[INFO] [stderr] 9  | |         //    ::frontend::protocol_json::Error,
[INFO] [stderr] ...  |
[INFO] [stderr] 27 | |     }
[INFO] [stderr] 28 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/ir/compilation_unit/mod.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |             _ => None,
[INFO] [stderr]    |             ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/ir/compilation_unit/mod.rs:126:17
[INFO] [stderr]     |
[INFO] [stderr] 126 |                 _ => (),
[INFO] [stderr]     |                 ^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/ir/compilation_unit/mod.rs:179:17
[INFO] [stderr]     |
[INFO] [stderr] 179 |                 _ => panic!(),
[INFO] [stderr]     |                 ^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/backend/imperative_base/mod.rs:199:9
[INFO] [stderr]     |
[INFO] [stderr] 199 |         _ => unimplemented!(),
[INFO] [stderr]     |         ^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/backend/javascript/ib_to_js.rs:276:9
[INFO] [stderr]     |
[INFO] [stderr] 276 |         _ => unimplemented!(),
[INFO] [stderr]     |         ^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/backend/python/ib_to_py.rs:253:9
[INFO] [stderr]     |
[INFO] [stderr] 253 |         _ => unimplemented!(),
[INFO] [stderr]     |         ^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/ir/spec/variant/simple_scalar.rs:39:24
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stderr]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]   --> src/ir/spec/variant/simple_scalar.rs:56:53
[INFO] [stderr]    |
[INFO] [stderr] 56 |             CompilePass::ResolveReferencedTypes(ref path, ref cu) => {
[INFO] [stderr]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/ir/spec/variant/mod.rs:64:28
[INFO] [stderr]    |
[INFO] [stderr] 64 |     pub fn get_type(&self, data: &TypeData) -> VariantType {
[INFO] [stderr]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/ir/type_spec/literal.rs:90:17
[INFO] [stderr]    |
[INFO] [stderr] 90 | fn parse_binary(data: &BinarySpec, input_str: &str) -> Result<TypeSpecLiteralVariant> {
[INFO] [stderr]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `count_root_node`
[INFO] [stderr]    --> src/backend/imperative_base/deserialize.rs:101:13
[INFO] [stderr]     |
[INFO] [stderr] 101 |         let count_root_node = data.get_reference_root(self.count_handle).upgrade();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count_root_node`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `item_var`
[INFO] [stderr]    --> src/backend/imperative_base/deserialize.rs:109:13
[INFO] [stderr]     |
[INFO] [stderr] 109 |         let item_var = format!("array_{}_index", ident);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_var`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_spec`
[INFO] [stderr]   --> src/backend/imperative_base/reference.rs:81:27
[INFO] [stderr]    |
[INFO] [stderr] 81 |                 ref node, ref type_spec, .. }) => {
[INFO] [stderr]    |                           ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_spec`
[INFO] [stderr]    --> src/backend/imperative_base/reference.rs:134:17
[INFO] [stderr]     |
[INFO] [stderr] 134 |                 ref type_spec, .. }) => {
[INFO] [stderr]     |                 ^^^^^^^^^^^^^ help: try ignoring the field: `type_spec: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_name`
[INFO] [stderr]    --> src/backend/javascript/ib_to_js.rs:126:54
[INFO] [stderr]     |
[INFO] [stderr] 126 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `default`
[INFO] [stderr]   --> src/backend/rust/ib_to_rs.rs:39:53
[INFO] [stderr]    |
[INFO] [stderr] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stderr]    |                                  ^^^^^^^^^^^ help: try ignoring the field: `default: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `enum_type`
[INFO] [stderr]   --> src/backend/rust/ib_to_rs.rs:39:66
[INFO] [stderr]    |
[INFO] [stderr] 39 | ...                   ref cases, ref default, ref enum_type } } => {
[INFO] [stderr]    |                                               ^^^^^^^^^^^^^ help: try ignoring the field: `enum_type: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `typ_name_size_of`
[INFO] [stderr]   --> src/backend/rust/cu_to_rs.rs:33:13
[INFO] [stderr]    |
[INFO] [stderr] 33 |         let typ_name_size_of = format!("{}_size_of", typ_base_name);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_size_of`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `typ_name_deserialize`
[INFO] [stderr]   --> src/backend/rust/cu_to_rs.rs:35:13
[INFO] [stderr]    |
[INFO] [stderr] 35 |         let typ_name_deserialize = format!("{}_deserialize", typ_base_name);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_name_deserialize`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `length_var`
[INFO] [stderr]   --> src/backend/python/ib_to_py.rs:27:21
[INFO] [stderr]    |
[INFO] [stderr] 27 |                 let length_var = format!("{}_length", index_var);
[INFO] [stderr]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_length_var`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_name`
[INFO] [stderr]    --> src/backend/python/ib_to_py.rs:113:54
[INFO] [stderr]     |
[INFO] [stderr] 113 |             ib::Operation::TypeCall { ref input_var, ref type_name,
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^ help: try ignoring the field: `type_name: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `native`
[INFO] [stderr]   --> src/backend/json_spec/mod.rs:34:34
[INFO] [stderr]    |
[INFO] [stderr] 34 |             TypeKind::Native(ref native) => {
[INFO] [stderr]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_native`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `typ_data`
[INFO] [stderr]   --> src/frontend/protocol_spec/from_ir.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |     let typ_data = &typ_inner.data;
[INFO] [stderr]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_typ_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target`
[INFO] [stderr]    --> src/pass/resolve_reference.rs:213:23
[INFO] [stderr]     |
[INFO] [stderr] 213 | fn validate_causality(target: &mut ReferenceData) -> Result<()> {
[INFO] [stderr]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/ir/spec/variant/simple_scalar.rs:100:13
[INFO] [stderr]     |
[INFO] [stderr] 100 |         let mut data = TypeData::default();
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/backend/rust/ib_to_rs.rs:40:17
[INFO] [stderr]    |
[INFO] [stderr] 40 |             let mut cases = cases.iter()
[INFO] [stderr]    |                 ----^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/backend/python/ib_to_py.rs:151:17
[INFO] [stderr]     |
[INFO] [stderr] 151 |             let mut cases: Vec<(Expr, Block)> = cases.iter()
[INFO] [stderr]     |                 ----^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `WeakDefinedTypeSpecContainer` is never used
[INFO] [stderr]  --> src/ir/compilation_unit/defined_type_spec.rs:5:10
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type WeakDefinedTypeSpecContainer = WeakContainer<DefinedTypeSpec>;
[INFO] [stderr]   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `HexOne` and `HexTwo` are never constructed
[INFO] [stderr]   --> src/ir/type_spec/literal.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 81 | enum ParseBinaryState {
[INFO] [stderr]    |      ---------------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 86 |     HexOne(bool),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 87 |     HexTwo(u8, bool),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `parse` is never used
[INFO] [stderr]   --> src/ir/target_type.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl TargetType {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] 17 |
[INFO] [stderr] 18 |     fn parse(&self, raw: &str) -> Option<TargetTypeValue> {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Integer`, `Bytes`, and `Enum` are never constructed
[INFO] [stderr]   --> src/ir/target_type.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub enum TargetTypeValue {
[INFO] [stderr]    |          --------------- variants in this enum
[INFO] [stderr] 38 |     Integer(u64),
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 39 |     Bytes(Vec<u8>),
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 40 |     Enum(String),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TargetTypeValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_type` is never used
[INFO] [stderr]   --> src/ir/target_type.rs:44:8
[INFO] [stderr]    |
[INFO] [stderr] 42 | impl TargetTypeValue {
[INFO] [stderr]    | -------------------- method in this implementation
[INFO] [stderr] 43 |
[INFO] [stderr] 44 |     fn get_type(&self) -> TargetType {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `block` and `result_var` are never read
[INFO] [stderr]   --> src/backend/imperative_base/mod.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub struct ResultBlock {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 23 |     block: Block,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 24 |     result_var: Var,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ResultBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_compile` is never used
[INFO] [stderr]  --> src/backend/imperative_base/tests/mod.rs:2:4
[INFO] [stderr]   |
[INFO] [stderr] 2 | fn test_compile(spec: &str) {
[INFO] [stderr]   |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `AssignBlock`, `Block`, and `Module` are never constructed
[INFO] [stderr]   --> src/backend/rust/builder.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 4  | pub enum Statement {
[INFO] [stderr]    |          --------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 10 |     AssignBlock {
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 |     Block {
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     Module {
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `block` is never used
[INFO] [stderr]   --> src/backend/rust/builder.rs:64:12
[INFO] [stderr]    |
[INFO] [stderr] 47 | impl Block {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 64 |     pub fn block(&mut self, block: Block) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `format_error` is never used
[INFO] [stderr]   --> src/frontend/protocol_spec/ast/parser.rs:17:4
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn format_error(input: &str, error: pds::ParseError) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ir_to_spec` is never used
[INFO] [stderr]  --> src/frontend/protocol_spec/from_ir.rs:7:4
[INFO] [stderr]   |
[INFO] [stderr] 7 | fn ir_to_spec(type_name: String, typ: TypeContainer) -> Statement {
[INFO] [stderr]   |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ir_to_spec_inner` is never used
[INFO] [stderr]   --> src/frontend/protocol_spec/from_ir.rs:26:4
[INFO] [stderr]    |
[INFO] [stderr] 26 | fn ir_to_spec_inner(typ: TypeContainer) -> Statement {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::ir_to_spec`
[INFO] [stderr]   --> src/frontend/protocol_spec/from_ir.rs:94:9
[INFO] [stderr]    |
[INFO] [stderr] 94 |     use super::ir_to_spec;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::protocol_spec::ast::printer::print`
[INFO] [stderr]   --> src/frontend/protocol_spec/from_ir.rs:97:9
[INFO] [stderr]    |
[INFO] [stderr] 97 |     use self::protocol_spec::ast::printer::print;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::protocol_spec::ast::Block`
[INFO] [stderr]   --> src/frontend/protocol_spec/from_ir.rs:98:9
[INFO] [stderr]    |
[INFO] [stderr] 98 |     use self::protocol_spec::ast::Block;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `protodefc` (lib) generated 86 warnings (run `cargo fix --lib -p protodefc` to apply 53 suggestions)
[INFO] [stderr] warning: `protodefc` (lib test) generated 88 warnings (85 duplicates) (run `cargo fix --lib -p protodefc --tests` to apply 3 suggestions)
[INFO] [stderr] warning: unused import: `protodefc::ir::spec::TypeContainer`
[INFO] [stderr]  --> tests/spec_compile.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use protodefc::ir::spec::TypeContainer;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `protodefc` (test "spec_compile") generated 1 warning (run `cargo fix --test "spec_compile"` to apply 1 suggestion)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/protodefc-016c034ef663dfe9)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test backend::imperative_base::tests::simple_scalar ... ok
[INFO] [stdout] test ir::spec::reference::tests::successes ... ok
[INFO] [stdout] test frontend::protocol_json::test::test_from_json ... ok
[INFO] [stdout] test frontend::protocol_spec::ast::value_helpers::tests::tag_getters ... ok
[INFO] [stdout] test backend::imperative_base::tests::container ... ok
[INFO] [stdout] test frontend::protocol_spec::ast::value_helpers::tests::tag_validators ... ok
[INFO] [stdout] test frontend::protocol_spec::tests::spec_to_compilation_unit ... ok
[INFO] [stdout] test test_harness::tests::gen_spec_test_cases ... FAILED
[INFO] [stdout] test ir::spec::reference::tests::up_after_down - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_harness::tests::gen_spec_test_cases stdout ----
[INFO] [stdout] thread 'test_harness::tests::gen_spec_test_cases' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/test_harness.rs:17:48
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5646f5a5164a - std::backtrace_rs::backtrace::libunwind::trace::h2f05d0192276a8f6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
[INFO] [stdout]    1:     0x5646f5a5164a - std::backtrace_rs::backtrace::trace_unsynchronized::hedc23dff7a1af150
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5646f5a5164a - std::sys_common::backtrace::_print_fmt::h17541ef7592f3ce2
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:65:5
[INFO] [stdout]    3:     0x5646f5a5164a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h20f75df5ab0c0792
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x5646f5a75cbf - core::fmt::write::h78109e6f466b3af6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/fmt/mod.rs:1254:17
[INFO] [stdout]    5:     0x5646f5a4e675 - std::io::Write::write_fmt::hd24bfb68a1b35a25
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/io/mod.rs:1698:15
[INFO] [stdout]    6:     0x5646f5a51415 - std::sys_common::backtrace::_print::h8dac57a9f8fbf9a5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    7:     0x5646f5a51415 - std::sys_common::backtrace::print::hf9ecbf41d1aa712f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    8:     0x5646f5a530ce - std::panicking::default_hook::{{closure}}::h04c07acfc84ca028
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:269:22
[INFO] [stdout]    9:     0x5646f5a52e01 - std::panicking::default_hook::h01f6bb23e1eceb2c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:285:9
[INFO] [stdout]   10:     0x5646f59e645b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h87fe9f7b2fd49e4c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   11:     0x5646f59e645b - test::test_main::{{closure}}::he94d679243a7531b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5646f5a537b4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f2d6d8b14c4769f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   13:     0x5646f5a537b4 - std::panicking::rust_panic_with_hook::h2bb3722bbaf2f6df
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:695:13
[INFO] [stdout]   14:     0x5646f5a53529 - std::panicking::begin_panic_handler::{{closure}}::h91bc7f36a4be011b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:582:13
[INFO] [stdout]   15:     0x5646f5a51ab6 - std::sys_common::backtrace::__rust_end_short_backtrace::h8b3d3717114f9e59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:150:18
[INFO] [stdout]   16:     0x5646f5a53282 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:578:5
[INFO] [stdout]   17:     0x5646f593ec33 - core::panicking::panic_fmt::hfd368e3fbdabea26
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:67:14
[INFO] [stdout]   18:     0x5646f593f1d3 - core::result::unwrap_failed::he54eb4b2f125b26f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/result.rs:1687:5
[INFO] [stdout]   19:     0x5646f599cb5c - core::result::Result<T,E>::unwrap::h3e307acfc4f3093c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/result.rs:1089:23
[INFO] [stdout]   20:     0x5646f59778e5 - protodefc::test_harness::json_spec_cases::hc36617ba3777a14b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/test_harness.rs:17:5
[INFO] [stdout]   21:     0x5646f598c1cc - protodefc::test_harness::tests::gen_spec_test_cases::hf1949f48c87a08be
[INFO] [stdout]                                at /opt/rustwide/workdir/src/test_harness.rs:90:9
[INFO] [stdout]   22:     0x5646f598c1a7 - protodefc::test_harness::tests::gen_spec_test_cases::{{closure}}::h02b3fb7e73e888f8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/test_harness.rs:89:30
[INFO] [stdout]   23:     0x5646f5997335 - core::ops::function::FnOnce::call_once::hb4e8336666459872
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5646f59eb32f - core::ops::function::FnOnce::call_once::ha6a70e79f7481a7e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5646f59eb32f - test::__rust_begin_short_backtrace::hce33033019b61e69
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:655:18
[INFO] [stdout]   26:     0x5646f59b8b1c - test::run_test::{{closure}}::h858d3528838ae3e5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:646:30
[INFO] [stdout]   27:     0x5646f59b8b1c - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8ac2b00f01ae79e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x5646f59ea406 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8093d25b522725ef
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   29:     0x5646f59ea406 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5c334c204e4a3913
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   30:     0x5646f59ea406 - std::panicking::try::do_call::ha8b740c7b9478074
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   31:     0x5646f59ea406 - std::panicking::try::h5d34f63d0e41b64e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   32:     0x5646f59ea406 - std::panic::catch_unwind::hcfbb511e1aa7fc67
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   33:     0x5646f59ea406 - test::run_test_in_process::h9abda90f802eaf21
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:678:27
[INFO] [stdout]   34:     0x5646f59ea406 - test::run_test::run_test_inner::{{closure}}::h0f058de91f6c6edf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:572:39
[INFO] [stdout]   35:     0x5646f59b3325 - test::run_test::run_test_inner::{{closure}}::h5ca48a4c59c6c1fb
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:599:37
[INFO] [stdout]   36:     0x5646f59b3325 - std::sys_common::backtrace::__rust_begin_short_backtrace::h32bd51e1495d4a33
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:134:18
[INFO] [stdout]   37:     0x5646f59b8861 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc086fae9b128b2db
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:526:17
[INFO] [stdout]   38:     0x5646f59b8861 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb66571888d270d43
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   39:     0x5646f59b8861 - std::panicking::try::do_call::h4fa2ef4f6e51fecf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   40:     0x5646f59b8861 - std::panicking::try::h1e9e22b8584489b5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   41:     0x5646f59b8861 - std::panic::catch_unwind::h44698a3de0e0769e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   42:     0x5646f59b8861 - std::thread::Builder::spawn_unchecked_::{{closure}}::h50153abde3fe239e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:525:30
[INFO] [stdout]   43:     0x5646f59b8861 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbe5bbf6f38394364
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5646f5a58085 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0d83cb2920a49046
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   45:     0x5646f5a58085 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbe0a008aa7d9ef59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   46:     0x5646f5a58085 - std::sys::unix::thread::Thread::new::thread_start::h3a466996bdf6b1f9
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   47:     0x7fef08efeb43 - <unknown>
[INFO] [stdout]   48:     0x7fef08f8fbb4 - __clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_harness::tests::gen_spec_test_cases
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 8 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "08fa498072a93fa76788b4157e4e14bbd3c3d6bbae1fe037071e18e9d2a38287", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08fa498072a93fa76788b4157e4e14bbd3c3d6bbae1fe037071e18e9d2a38287", kill_on_drop: false }`
[INFO] [stdout] 08fa498072a93fa76788b4157e4e14bbd3c3d6bbae1fe037071e18e9d2a38287
