[INFO] cloning repository https://github.com/besok/plc-compiler
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/besok/plc-compiler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbesok%2Fplc-compiler", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbesok%2Fplc-compiler'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4ed6095c7916fd89cf4f69e134111861437d9760
[INFO] checking besok/plc-compiler against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbesok%2Fplc-compiler" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/besok/plc-compiler
[INFO] finished tweaking git repo https://github.com/besok/plc-compiler
[INFO] tweaked toml for git repo https://github.com/besok/plc-compiler written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/besok/plc-compiler on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/besok/plc-compiler 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded beef v0.5.2
[INFO] [stderr]   Downloaded logos v0.12.1
[INFO] [stderr]   Downloaded logos-derive v0.12.1
[INFO] [stderr]   Downloaded regex-syntax v0.6.27
[INFO] [stderr]   Downloaded parsit v0.1.12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] be23e7d8985a8c6895088ad28fda28f28aa1acf39999c5b6534cc14113778ba7
[INFO] running `Command { std: "docker" "start" "-a" "be23e7d8985a8c6895088ad28fda28f28aa1acf39999c5b6534cc14113778ba7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "be23e7d8985a8c6895088ad28fda28f28aa1acf39999c5b6534cc14113778ba7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be23e7d8985a8c6895088ad28fda28f28aa1acf39999c5b6534cc14113778ba7", kill_on_drop: false }`
[INFO] [stdout] be23e7d8985a8c6895088ad28fda28f28aa1acf39999c5b6534cc14113778ba7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 083c7da69dfef53a1f8143f6ff99942a6ae6c33edd367eb27ecb1b1aac76f5e2
[INFO] running `Command { std: "docker" "start" "-a" "083c7da69dfef53a1f8143f6ff99942a6ae6c33edd367eb27ecb1b1aac76f5e2", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.47
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling unicode-ident v1.0.5
[INFO] [stderr]    Compiling syn v1.0.103
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling logos-derive v0.12.1
[INFO] [stderr]     Checking logos v0.12.1
[INFO] [stderr]     Checking parsit v0.1.12
[INFO] [stderr]     Checking plc-compiler v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/parser.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FilterResult` and `Lexer`
[INFO] [stdout]  --> src/parser/tokens.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use logos::{FilterResult, Lexer, Logos};
[INFO] [stdout]   |             ^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Split`
[INFO] [stdout]  --> src/parser/ast/time.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::{FromStr, Split};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Display` and `Formatter`
[INFO] [stdout]  --> src/parser/ast.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::{Display, Formatter};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `expect_pos` and `fail_on`
[INFO] [stdout]  --> src/parser/tests/variable.rs:1:41
[INFO] [stdout]   |
[INFO] [stdout] 1 | use parsit::test::parser_test::{expect, expect_pos, fail_on};
[INFO] [stdout]   |                                         ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parser::ast::case::CaseCondition`
[INFO] [stdout]  --> src/parser/tests/variable.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::ast::case::CaseCondition;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NType`, `NValue`, and `Numeric`
[INFO] [stdout]  --> src/parser/tests/variable.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::parser::ast::numeric::{NType, Numeric, NValue};
[INFO] [stdout]   |                                   ^^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SubRange` and `TypeCast`
[INFO] [stdout]  --> src/parser/tests/variable.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::ast::{Id, SubRange, TypeCast};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `expect_or_env`, `expect_pos`, and `fail_on`
[INFO] [stdout]  --> src/parser/tests/statement.rs:1:41
[INFO] [stdout]   |
[INFO] [stdout] 1 | use parsit::test::parser_test::{expect, expect_or_env, expect_pos, fail_on};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parser::ast::case::CaseCondition`
[INFO] [stdout]  --> src/parser/tests/statement.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::ast::case::CaseCondition;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NType`, `NValue`, and `Numeric`
[INFO] [stdout]  --> src/parser/tests/statement.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::parser::ast::numeric::{NType, Numeric, NValue};
[INFO] [stdout]   |                                   ^^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SubRange` and `TypeCast`
[INFO] [stdout]  --> src/parser/tests/statement.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::ast::{Id, SubRange, TypeCast};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/parser.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FilterResult` and `Lexer`
[INFO] [stdout]  --> src/parser/tokens.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use logos::{FilterResult, Lexer, Logos};
[INFO] [stdout]   |             ^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Split`
[INFO] [stdout]  --> src/parser/ast/time.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::{FromStr, Split};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Display` and `Formatter`
[INFO] [stdout]  --> src/parser/ast.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::{Display, Formatter};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/parser.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let cond = |p|
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/parser.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let cond = |p|
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `of`, `case_`, `end_case`, and `colon` are never used
[INFO] [stdout]   --> src/parser.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl<'a> Parser<'a> {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] 40 |     pub fn of(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn case_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn end_case(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn colon(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `case_selection_elem`, `case_selection`, and `case_st` are never used
[INFO] [stdout]    --> src/parser.rs:382:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl<'a> Parser<'a> {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 382 |     pub fn case_selection_elem(&self, pos: usize) -> Step<'a, CaseSelectionElem<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 388 |     pub fn case_selection(&self, pos: usize) -> Step<'a, CaseSelection<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn case_st(&self, pos: usize) -> Step<'a, CaseSt<'a>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Y` is never constructed
[INFO] [stdout]  --> src/parser/ast/expression.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Expression<'a>{
[INFO] [stdout]   |          ---------- variant in this enum
[INFO] [stdout] 7 |     X,
[INFO] [stdout] 8 |     Y(&'a str)
[INFO] [stdout]   |     ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Expression` 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: variants `Selection` and `Iteration` are never constructed
[INFO] [stdout]   --> src/parser/ast/statement.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum Statement<'a> {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 40 |     Selection(SelectionSt<'a>),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 41 |     Iteration,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` 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: variants `If` and `Case` are never constructed
[INFO] [stdout]   --> src/parser/ast/statement.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub enum SelectionSt<'a> {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 89 |     If(IfSt<'a>),
[INFO] [stdout]    |     ^^
[INFO] [stdout] 90 |     Case(CaseSt<'a>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SelectionSt` 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: variants `Subrange` and `Expression` are never constructed
[INFO] [stdout]    --> src/parser/ast/statement.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub enum CaseSelectionElem<'a>{
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] 119 |     Subrange(SubRange),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 120 |     Expression(Expression<'a>)
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaseSelectionElem` 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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parser.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn case_cond(&self, pos: usize) -> Step<'a, CaseCondition> {
[INFO] [stdout]     |                      ^^^^^                          ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn case_cond(&self, pos: usize) -> Step<'a, CaseCondition<'_>> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]   --> src/parser.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Parser<'a> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `token` are never used
[INFO] [stdout]   --> src/parser.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<'a> Parser<'a> {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 28 |     pub fn new(src: &'a str) -> Result<Self, ParseError<'a>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn token(&self, pos: usize) -> Result<(&Token<'a>, usize), ParseError<'a>> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/parser.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl<'a> Parser<'a> {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout]  40 |     pub fn of(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     pub fn case_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn end_case(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub fn end_if(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn semi(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub fn then(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn else_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn els_if(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub fn if_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |     pub fn return_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn super_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  73 |     pub fn r_arrow(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub fn not(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub fn this(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn comma(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn colon(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn l_p(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn r_p(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn dot(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn caret(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn lbr(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn rbr(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn num(&self, pos: usize) -> Step<'a, Numeric> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn id(&self, pos: usize) -> Step<'a, Id<'a>> {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn cast(&self, pos: usize) -> Step<'a, TypeCast<'a>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn direct_variable(&self, pos: usize) -> Step<'a, &'a str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn assign(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn assign_attempt(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn ref_(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn null(&self, pos: usize) -> Step<'a, EmptyToken> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/parser.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl<'a> Parser<'a> {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] 134 |     pub fn expression(&self, pos: usize) -> Step<'a, Expression<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn subrange(&self, pos: usize) -> Step<'a, SubRange> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn case_cond(&self, pos: usize) -> Step<'a, CaseCondition> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn subscript_list(&self, pos: usize) -> Step<'a, Vec<Expression<'a>>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn var_access(&self, pos: usize) -> Step<'a, VarAccess<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub fn var_value(&self, pos: usize) -> Step<'a, VarValue<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn var_path(&self, pos: usize) -> Step<'a, VarPath<'a>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn symbolic_var(&self, pos: usize) -> Step<'a, SymbolicVar<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn variable(&self, pos: usize) -> Step<'a, Variable<'a>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn assign_rhs(&self, pos: usize) -> Step<'a, AssignRhs<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn ref_assign(&self, pos: usize) -> Step<'a, (Id<'a>, AssignRhs<'a>)> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn assignment(&self, pos: usize) -> Step<'a, AssignmentSt<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn param_assign(&self, pos: usize) -> Step<'a, Param<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn param_assign_list(&self, pos: usize) -> Step<'a, Vec<Param<'a>>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn fn_call(&self, pos: usize) -> Step<'a, InvocationSt<'a>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn invocation(&self, pos: usize) -> Step<'a, InvocationLine<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn invocation_st(&self, pos: usize) -> Step<'a, InvocationSt<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub fn statement_list(&self, pos: usize) -> Step<'a, Vec<Statement<'a>>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 340 |     pub fn statement(&self, pos: usize) -> Step<'a, Statement<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     pub fn if_st(&self, pos: usize) -> Step<'a, IfSt<'a>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 |     pub fn case_selection_elem(&self, pos: usize) -> Step<'a, CaseSelectionElem<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 388 |     pub fn case_selection(&self, pos: usize) -> Step<'a, CaseSelection<'a>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn case_st(&self, pos: usize) -> Step<'a, CaseSt<'a>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Token` is never used
[INFO] [stdout]   --> src/parser/tokens.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum Token<'a> {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Id` is never constructed
[INFO] [stdout]   --> src/parser/ast.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Id<'a>(pub &'a str);
[INFO] [stdout]    |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TypeCast` is never constructed
[INFO] [stdout]   --> src/parser/ast.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct TypeCast<'a>(pub Id<'a>, pub Id<'a>);
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_type_cast` is never used
[INFO] [stdout]   --> src/parser/ast.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) fn to_type_cast<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<TypeCast<'a>, String> {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Text` is never constructed
[INFO] [stdout]   --> src/parser/ast.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Text<'a>(pub &'a str);
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_text` is never used
[INFO] [stdout]   --> src/parser/ast.rs:31:15
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub(crate) fn to_text<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Text<'a>, String> {
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SubRange` is never constructed
[INFO] [stdout]   --> src/parser/ast.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct SubRange(pub Numeric, pub Numeric);
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DateValue` is never constructed
[INFO] [stdout]  --> src/parser/ast/time.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct DateValue {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TimeValue` is never constructed
[INFO] [stdout]   --> src/parser/ast/time.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct TimeValue {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DurationValue` is never constructed
[INFO] [stdout]   --> src/parser/ast/time.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct DurationValue {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Date` is never used
[INFO] [stdout]   --> src/parser/ast/time.rs:34:10
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Date {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/parser/ast/time.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn parse<F: FromStr>(input: &str) -> Result<F, String> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trim_prefix` is never used
[INFO] [stdout]   --> src/parser/ast/time.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn trim_prefix(input: &str) -> Result<&str, String> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_duration` is never used
[INFO] [stdout]   --> src/parser/ast/time.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn to_duration<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Date, String> {
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_date_value` is never used
[INFO] [stdout]    --> src/parser/ast/time.rs:133:15
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub(crate) fn to_date_value<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Date, String> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_tod_value` is never used
[INFO] [stdout]    --> src/parser/ast/time.rs:139:15
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub(crate) fn to_tod_value<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Date, String> {
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_tod` is never used
[INFO] [stdout]    --> src/parser/ast/time.rs:144:4
[INFO] [stdout]     |
[INFO] [stdout] 144 | fn parse_tod(input: &str) -> Result<TimeValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_date` is never used
[INFO] [stdout]    --> src/parser/ast/time.rs:169:4
[INFO] [stdout]     |
[INFO] [stdout] 169 | fn parse_date(input: &str) -> Result<DateValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_data_time_value` is never used
[INFO] [stdout]    --> src/parser/ast/time.rs:185:15
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub(crate) fn to_data_time_value<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Date, String> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Numeric` is never used
[INFO] [stdout]   --> src/parser/ast/numeric.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum Numeric {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NValue` is never used
[INFO] [stdout]   --> src/parser/ast/numeric.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum NValue {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NType` is never used
[INFO] [stdout]   --> src/parser/ast/numeric.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum NType {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_number` is never used
[INFO] [stdout]   --> src/parser/ast/numeric.rs:74:15
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub(crate) fn to_number<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Numeric, String> {
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_real` is never used
[INFO] [stdout]   --> src/parser/ast/numeric.rs:91:15
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub(crate) fn to_real<'a>(lex: &mut Lexer<'a, Token<'a>>) -> Result<Numeric, String> {
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_real` is never used
[INFO] [stdout]    --> src/parser/ast/numeric.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn parse_real(input: &str) -> Result<NValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_int` is never used
[INFO] [stdout]    --> src/parser/ast/numeric.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn parse_int(input: &str) -> Result<NValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_bin` is never used
[INFO] [stdout]    --> src/parser/ast/numeric.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn parse_bin<'a>(input: &str) -> Result<NValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_oct` is never used
[INFO] [stdout]    --> src/parser/ast/numeric.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn parse_oct<'a>(input: &str) -> Result<NValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_hex` is never used
[INFO] [stdout]    --> src/parser/ast/numeric.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_hex<'a>(input: &str) -> Result<NValue, String> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CaseCondition` is never used
[INFO] [stdout]  --> src/parser/ast/case.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum CaseCondition<'a> {
[INFO] [stdout]   |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expression` is never used
[INFO] [stdout]  --> src/parser/ast/expression.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Expression<'a>{
[INFO] [stdout]   |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Variable` is never used
[INFO] [stdout]   --> src/parser/ast/variable.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Variable<'a> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SymbolicVar` is never constructed
[INFO] [stdout]   --> src/parser/ast/variable.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct SymbolicVar<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VarAccess` is never used
[INFO] [stdout]   --> src/parser/ast/variable.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum VarAccess<'a> {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VarValue` is never used
[INFO] [stdout]   --> src/parser/ast/variable.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum VarValue<'a> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MultiVarElem` is never used
[INFO] [stdout]   --> src/parser/ast/variable.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum MultiVarElem<'a> {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VarPath` is never used
[INFO] [stdout]   --> src/parser/ast/variable.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum VarPath<'a> {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Statement` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum Statement<'a> {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AssignmentSt` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub enum AssignmentSt<'a> {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AssignRhs` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub enum AssignRhs<'a> {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `InvocationSt` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum InvocationSt<'a> {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InvocationLine` is never constructed
[INFO] [stdout]   --> src/parser/ast/statement.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct InvocationLine<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `InvocationPath` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub enum InvocationPath<'a> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Param` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:79:10
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub enum Param<'a> {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SelectionSt` is never used
[INFO] [stdout]   --> src/parser/ast/statement.rs:88:10
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub enum SelectionSt<'a> {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IfBranch` is never constructed
[INFO] [stdout]   --> src/parser/ast/statement.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct IfBranch<'a> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IfSt` is never constructed
[INFO] [stdout]    --> src/parser/ast/statement.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct IfSt<'a> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CaseSt` is never constructed
[INFO] [stdout]    --> src/parser/ast/statement.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct CaseSt<'a> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CaseSelection` is never constructed
[INFO] [stdout]    --> src/parser/ast/statement.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct CaseSelection<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CaseSelectionElem` is never used
[INFO] [stdout]    --> src/parser/ast/statement.rs:118:10
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub enum CaseSelectionElem<'a>{
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parser.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn case_cond(&self, pos: usize) -> Step<'a, CaseCondition> {
[INFO] [stdout]     |                      ^^^^^                          ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn case_cond(&self, pos: usize) -> Step<'a, CaseCondition<'_>> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/parser/tests.rs:9:29
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) fn parser(input: &str) -> Parser {
[INFO] [stdout]   |                             ^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                             |
[INFO] [stdout]   |                             the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) fn parser(input: &str) -> Parser<'_> {
[INFO] [stdout]   |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.29s
[INFO] running `Command { std: "docker" "inspect" "083c7da69dfef53a1f8143f6ff99942a6ae6c33edd367eb27ecb1b1aac76f5e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "083c7da69dfef53a1f8143f6ff99942a6ae6c33edd367eb27ecb1b1aac76f5e2", kill_on_drop: false }`
[INFO] [stdout] 083c7da69dfef53a1f8143f6ff99942a6ae6c33edd367eb27ecb1b1aac76f5e2
