[INFO] cloning repository https://github.com/TimMeiwald/ppparser
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TimMeiwald/ppparser" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTimMeiwald%2Fppparser", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTimMeiwald%2Fppparser'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 32a69a7b82c32c8d2c7fbd27cb74c93fc056323f
[INFO] testing TimMeiwald/ppparser against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTimMeiwald%2Fppparser" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/TimMeiwald/ppparser on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/TimMeiwald/ppparser
[INFO] finished tweaking git repo https://github.com/TimMeiwald/ppparser
[INFO] tweaked toml for git repo https://github.com/TimMeiwald/ppparser written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/TimMeiwald/ppparser 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" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 389ad90b4faf6dbb098348a6c73054dcc7935b78998958932b711bf4883bc5d1
[INFO] running `Command { std: "docker" "start" "-a" "389ad90b4faf6dbb098348a6c73054dcc7935b78998958932b711bf4883bc5d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "389ad90b4faf6dbb098348a6c73054dcc7935b78998958932b711bf4883bc5d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "389ad90b4faf6dbb098348a6c73054dcc7935b78998958932b711bf4883bc5d1", kill_on_drop: false }`
[INFO] [stdout] 389ad90b4faf6dbb098348a6c73054dcc7935b78998958932b711bf4883bc5d1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 377c63eab37822a73d9ac61800c30a17c0c22b4947bf0e7de57e370f172e5eca
[INFO] running `Command { std: "docker" "start" "-a" "377c63eab37822a73d9ac61800c30a17c0c22b4947bf0e7de57e370f172e5eca", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.53
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.5
[INFO] [stderr]    Compiling num-iter v0.1.44
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling num v0.4.1
[INFO] [stderr]    Compiling rules v0.6.0 (/opt/rustwide/workdir/rules)
[INFO] [stderr]    Compiling publisher v0.6.0 (/opt/rustwide/workdir/publisher)
[INFO] [stderr]    Compiling cache v0.6.0 (/opt/rustwide/workdir/cache)
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> publisher/src/tree.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> publisher/src/tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::IndexMut`
[INFO] [stdout]  --> publisher/src/tree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::IndexMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> publisher/src/tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> publisher/src/tree.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> publisher/src/tree.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]  --> publisher/src/tree.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::Index;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_key` is never used
[INFO] [stdout]    --> publisher/src/tree.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Tree {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling parser_core v0.6.0 (/opt/rustwide/workdir/parser_core)
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> parser_core/src/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> parser_core/src/var_name.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::{Node, Publisher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stdout]  --> parser_core/src/var_name.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stdout]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_key` is assigned to, but never used
[INFO] [stdout]    --> parser_core/src/var_name.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let last_key: Option<Key>;
[INFO] [stdout]     |                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_key` is never read
[INFO] [stdout]    --> parser_core/src/var_name.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             last_key = res.last_node();
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_parser v0.6.0 (/opt/rustwide/workdir/grammar_parser)
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sequence::sequence`
[INFO] [stdout]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_optional`
[INFO] [stdout]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parser_core::{Context, _optional};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tree`
[INFO] [stdout]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::{Publisher, Tree};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_generator v0.6.0 (/opt/rustwide/workdir/grammar_generator)
[INFO] [stdout] warning: unused import: `BinaryNode`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rules::Rules`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rules::Rules;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_runner v0.6.0 (/opt/rustwide/workdir/grammar_runner)
[INFO] [stdout] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 _ => return panic!("rhs"),
[INFO] [stdout]     |                      ^^^^^^^-------------
[INFO] [stdout]     |                      |      |
[INFO] [stdout]     |                      |      any code following this expression is unreachable
[INFO] [stdout]     |                      unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Publisher`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Publisher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `acc`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_lines` is never used
[INFO] [stdout]  --> grammar_generator/src/lib.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn count_lines(source: &String, start_position: u32) -> u32 {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratedCode` is never constructed
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct GeneratedCode {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:19:12
[INFO] [stdout]     |
[INFO] [stdout] 18  | impl GeneratedCode {
[INFO] [stdout]     | ------------------ associated functions in this implementation
[INFO] [stdout] 19  |     pub fn new(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29  |     fn generate(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     fn generate_rules_enum(symbol_table: &SymbolTable) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     fn match_rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71  |     fn rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn rhs(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn ordered_choice(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn sequence(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn atom(
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn optional(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     fn one_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn zero_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     fn and_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     fn not_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     fn nucleus(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     fn subexpression(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     fn var_name(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     fn terminal(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SymbolTable` is never constructed
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct SymbolTable<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(tree: &Tree, source: &'a String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn get_names(&self) -> &Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn print(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn run_duplication_check(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn create_symbol_table_from_tree(&mut self, tree: &Tree) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     fn create_symbol_table_from_tree_kernel(&mut self, tree: &Tree, index: Key) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Reference` is never used
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Reference {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Reference` 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: struct `BinaryTree_WO` is never constructed
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:34:12
[INFO] [stdout]     |
[INFO] [stdout] 33  | impl BinaryTree_WO {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 34  |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42  |     pub fn push(&mut self, reference: Reference, lhs: Option<Key>, rhs: Option<Key>) -> Key {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54  |     pub fn print(&self, index: Key) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58  |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78  |     pub fn to_string(&self, index: Key) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  |     fn match_ref(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn to_string_kernel(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn and_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     fn not_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn one_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn zero_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn subexpression(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     fn optional(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     fn ordered_choice(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     fn sequence(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     fn terminal(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     fn var_name(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryNode` is never constructed
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:291:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub struct BinaryNode {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling java_parser v0.6.0 (/opt/rustwide/workdir/java_parser)
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.46s
[INFO] running `Command { std: "docker" "inspect" "377c63eab37822a73d9ac61800c30a17c0c22b4947bf0e7de57e370f172e5eca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "377c63eab37822a73d9ac61800c30a17c0c22b4947bf0e7de57e370f172e5eca", kill_on_drop: false }`
[INFO] [stdout] 377c63eab37822a73d9ac61800c30a17c0c22b4947bf0e7de57e370f172e5eca
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c9631a5fc4eafe5acc88b01304502653d84afebdc5d4fcaa2d35e5261afbbf4f
[INFO] running `Command { std: "docker" "start" "-a" "c9631a5fc4eafe5acc88b01304502653d84afebdc5d4fcaa2d35e5261afbbf4f", kill_on_drop: false }`
[INFO] [stderr]    Compiling rules v0.6.0 (/opt/rustwide/workdir/rules)
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> publisher/src/tree.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> publisher/src/tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling publisher v0.6.0 (/opt/rustwide/workdir/publisher)
[INFO] [stdout] warning: unused import: `std::ops::IndexMut`
[INFO] [stdout]  --> publisher/src/tree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::IndexMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cache v0.6.0 (/opt/rustwide/workdir/cache)
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> publisher/src/tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling parser_core v0.6.0 (/opt/rustwide/workdir/parser_core)
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> publisher/src/tree.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> publisher/src/tree.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]  --> publisher/src/tree.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::Index;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_key` is never used
[INFO] [stdout]    --> publisher/src/tree.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Tree {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> parser_core/src/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> parser_core/src/var_name.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::{Node, Publisher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stdout]  --> parser_core/src/var_name.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stdout]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_key` is assigned to, but never used
[INFO] [stdout]    --> parser_core/src/var_name.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let last_key: Option<Key>;
[INFO] [stdout]     |                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_key` is never read
[INFO] [stdout]    --> parser_core/src/var_name.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             last_key = res.last_node();
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sequence::sequence`
[INFO] [stdout]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_parser v0.6.0 (/opt/rustwide/workdir/grammar_parser)
[INFO] [stdout] warning: unused import: `_optional`
[INFO] [stdout]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parser_core::{Context, _optional};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tree`
[INFO] [stdout]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::{Publisher, Tree};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryNode`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rules::Rules`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rules::Rules;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 _ => return panic!("rhs"),
[INFO] [stdout]     |                      ^^^^^^^-------------
[INFO] [stdout]     |                      |      |
[INFO] [stdout]     |                      |      any code following this expression is unreachable
[INFO] [stdout]     |                      unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Publisher`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Publisher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `acc`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_lines` is never used
[INFO] [stdout]  --> grammar_generator/src/lib.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn count_lines(source: &String, start_position: u32) -> u32 {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratedCode` is never constructed
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct GeneratedCode {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:19:12
[INFO] [stdout]     |
[INFO] [stdout] 18  | impl GeneratedCode {
[INFO] [stdout]     | ------------------ associated functions in this implementation
[INFO] [stdout] 19  |     pub fn new(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29  |     fn generate(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     fn generate_rules_enum(symbol_table: &SymbolTable) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     fn match_rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71  |     fn rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn rhs(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn ordered_choice(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn sequence(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn atom(
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn optional(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     fn one_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn zero_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     fn and_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     fn not_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     fn nucleus(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     fn subexpression(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     fn var_name(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     fn terminal(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SymbolTable` is never constructed
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct SymbolTable<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(tree: &Tree, source: &'a String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn get_names(&self) -> &Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn print(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn run_duplication_check(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn create_symbol_table_from_tree(&mut self, tree: &Tree) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     fn create_symbol_table_from_tree_kernel(&mut self, tree: &Tree, index: Key) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Reference` is never used
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Reference {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Reference` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_generator v0.6.0 (/opt/rustwide/workdir/grammar_generator)
[INFO] [stdout] warning: struct `BinaryTree_WO` is never constructed
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling java_parser v0.6.0 (/opt/rustwide/workdir/java_parser)
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:34:12
[INFO] [stdout]     |
[INFO] [stdout] 33  | impl BinaryTree_WO {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 34  |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42  |     pub fn push(&mut self, reference: Reference, lhs: Option<Key>, rhs: Option<Key>) -> Key {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54  |     pub fn print(&self, index: Key) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58  |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78  |     pub fn to_string(&self, index: Key) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  |     fn match_ref(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn to_string_kernel(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn and_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     fn not_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn one_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn zero_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn subexpression(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     fn optional(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     fn ordered_choice(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     fn sequence(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     fn terminal(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     fn var_name(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryNode` is never constructed
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:291:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub struct BinaryNode {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryNode`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rules::Rules`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rules::Rules;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> publisher/src/tree.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> publisher/src/tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::IndexMut`
[INFO] [stdout]  --> publisher/src/tree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::IndexMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> publisher/src/tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> publisher/src/tree.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> publisher/src/tree.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> parser_core/src/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> parser_core/src/var_name.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::{Node, Publisher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stdout]  --> parser_core/src/var_name.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stdout]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sequence::sequence`
[INFO] [stdout]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_optional`
[INFO] [stdout]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parser_core::{Context, _optional};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tree`
[INFO] [stdout]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::{Publisher, Tree};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]  --> publisher/src/tree.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::Index;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 _ => return panic!("rhs"),
[INFO] [stdout]     |                      ^^^^^^^-------------
[INFO] [stdout]     |                      |      |
[INFO] [stdout]     |                      |      any code following this expression is unreachable
[INFO] [stdout]     |                      unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `path` is never read
[INFO] [stdout]   --> grammar_parser/tests/cache_performance_profiler.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut path = release_path;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]    --> publisher/src/tree.rs:300:17
[INFO] [stdout]     |
[INFO] [stdout] 300 |             let root = t.get_node(Key(0));
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y2`
[INFO] [stdout]    --> publisher/src/tree.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let y2 = t.get_node(Key(2));
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_key` is never used
[INFO] [stdout]    --> publisher/src/tree.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Tree {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Publisher`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Publisher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `acc`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:571:13
[INFO] [stdout]     |
[INFO] [stdout] 571 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:600:13
[INFO] [stdout]     |
[INFO] [stdout] 600 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:629:13
[INFO] [stdout]     |
[INFO] [stdout] 629 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:659:13
[INFO] [stdout]     |
[INFO] [stdout] 659 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push` and `check_symbol` are never used
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stdout]    | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `print` and `print_kernel` are never used
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl BinaryTree_WO {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn print(&self, index: Key) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `only_true_tree`
[INFO] [stdout]    --> grammar_parser/src/grammar.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let only_true_tree = context.stack.borrow().clear_false();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_only_true_tree`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_key` is assigned to, but never used
[INFO] [stdout]    --> parser_core/src/var_name.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let last_key: Option<Key>;
[INFO] [stdout]     |                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_key` is never read
[INFO] [stdout]    --> parser_core/src/var_name.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             last_key = res.last_node();
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_runner v0.6.0 (/opt/rustwide/workdir/grammar_runner)
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 37 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.26s
[INFO] running `Command { std: "docker" "inspect" "c9631a5fc4eafe5acc88b01304502653d84afebdc5d4fcaa2d35e5261afbbf4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c9631a5fc4eafe5acc88b01304502653d84afebdc5d4fcaa2d35e5261afbbf4f", kill_on_drop: false }`
[INFO] [stdout] c9631a5fc4eafe5acc88b01304502653d84afebdc5d4fcaa2d35e5261afbbf4f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4b38afb11bf00d874db517080a493459dde4c05c3decfc0bb28d16d7f5d5d5af
[INFO] running `Command { std: "docker" "start" "-a" "4b38afb11bf00d874db517080a493459dde4c05c3decfc0bb28d16d7f5d5d5af", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::rc::Rc;
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::RefCell`
[INFO] [stderr]  --> publisher/src/tree.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::cell::RefCell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::marker::PhantomData`
[INFO] [stderr]  --> publisher/src/tree.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::marker::PhantomData;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::IndexMut`
[INFO] [stderr]  --> publisher/src/tree.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::ops::IndexMut;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]  --> publisher/src/tree.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::rc::Rc;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread`
[INFO] [stderr]  --> publisher/src/tree.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::thread;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]   --> publisher/src/tree.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::time::Duration;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Index`
[INFO] [stderr]  --> publisher/src/tree.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::ops::Index;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_key` is never used
[INFO] [stderr]    --> publisher/src/tree.rs:141:8
[INFO] [stderr]     |
[INFO] [stderr] 114 | impl Tree {
[INFO] [stderr]     | --------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `root`
[INFO] [stderr]    --> publisher/src/tree.rs:300:17
[INFO] [stderr]     |
[INFO] [stderr] 300 |             let root = t.get_node(Key(0));
[INFO] [stderr]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `y2`
[INFO] [stderr]    --> publisher/src/tree.rs:307:13
[INFO] [stderr]     |
[INFO] [stderr] 307 |         let y2 = t.get_node(Key(2));
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stderr] 
[INFO] [stderr] warning: `publisher` (lib) generated 9 warnings (run `cargo fix --lib -p publisher` to apply 7 suggestions)
[INFO] [stderr] warning: `publisher` (lib test) generated 11 warnings (9 duplicates)
[INFO] [stderr] warning: unused import: `publisher::Tree`
[INFO] [stderr]  --> parser_core/src/context.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use publisher::Tree;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> parser_core/src/var_name.rs:5:17
[INFO] [stderr]   |
[INFO] [stderr] 5 | use publisher::{Node, Publisher};
[INFO] [stderr]   |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stderr]  --> parser_core/src/var_name.rs:7:11
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stderr]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `last_key` is assigned to, but never used
[INFO] [stderr]    --> parser_core/src/var_name.rs:119:17
[INFO] [stderr]     |
[INFO] [stderr] 119 |             let last_key: Option<Key>;
[INFO] [stderr]     |                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_last_key` instead
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `last_key` is never read
[INFO] [stderr]    --> parser_core/src/var_name.rs:122:13
[INFO] [stderr]     |
[INFO] [stderr] 122 |             last_key = res.last_node();
[INFO] [stderr]     |             ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `parser_core` (lib) generated 5 warnings (run `cargo fix --lib -p parser_core` to apply 3 suggestions)
[INFO] [stderr] warning: `parser_core` (lib test) generated 5 warnings (5 duplicates)
[INFO] [stderr] warning: unused import: `sequence::sequence`
[INFO] [stderr]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stderr]   |
[INFO] [stderr] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stderr]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `_optional`
[INFO] [stderr]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stderr]   |
[INFO] [stderr] 2 | use parser_core::{Context, _optional};
[INFO] [stderr]   |                            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Tree`
[INFO] [stderr]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stderr]   |
[INFO] [stderr] 6 | use publisher::{Publisher, Tree};
[INFO] [stderr]   |                            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `only_true_tree`
[INFO] [stderr]    --> grammar_parser/src/grammar.rs:124:13
[INFO] [stderr]     |
[INFO] [stderr] 124 |         let only_true_tree = context.stack.borrow().clear_false();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_only_true_tree`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `grammar_parser` (lib) generated 3 warnings (run `cargo fix --lib -p grammar_parser` to apply 3 suggestions)
[INFO] [stderr] warning: `grammar_parser` (lib test) generated 4 warnings (3 duplicates)
[INFO] [stderr] warning: unused import: `BinaryNode`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stderr]   |                        ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::count_lines`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::count_lines;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Node`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use publisher::Node;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::format`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::fmt::format;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::count_lines`
[INFO] [stderr]  --> grammar_generator/src/symbol_table.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::count_lines;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::format`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::fmt::format;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::count_lines`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::count_lines;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Node`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use publisher::Node;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Tree`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use publisher::Tree;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rules::Rules`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use rules::Rules;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct BinaryTree_WO {
[INFO] [stderr]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stderr]     |
[INFO] [stderr] 180 |                 _ => return panic!("rhs"),
[INFO] [stderr]     |                      ^^^^^^^-------------
[INFO] [stderr]     |                      |      |
[INFO] [stderr]     |                      |      any code following this expression is unreachable
[INFO] [stderr]     |                      unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Publisher`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use publisher::Publisher;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stderr]    |
[INFO] [stderr] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `acc`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stderr]     |
[INFO] [stderr] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stderr]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stderr]     |
[INFO] [stderr] 187 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stderr]     |
[INFO] [stderr] 215 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stderr]     |
[INFO] [stderr] 243 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stderr]     |
[INFO] [stderr] 280 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stderr]     |
[INFO] [stderr] 303 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stderr]     |
[INFO] [stderr] 326 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stderr]     |
[INFO] [stderr] 350 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stderr]     |
[INFO] [stderr] 374 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stderr]     |
[INFO] [stderr] 397 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stderr]     |
[INFO] [stderr] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stderr]     |
[INFO] [stderr] 453 |         symbol_table: &SymbolTable,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stderr]     |
[INFO] [stderr] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stderr]     |
[INFO] [stderr] 469 |         symbol_table: &SymbolTable,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stderr]     |
[INFO] [stderr] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `index`
[INFO] [stderr]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stderr]    |
[INFO] [stderr] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stderr]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stderr] 
[INFO] [stderr] warning: function `count_lines` is never used
[INFO] [stderr]  --> grammar_generator/src/lib.rs:4:4
[INFO] [stderr]   |
[INFO] [stderr] 4 | fn count_lines(source: &String, start_position: u32) -> u32 {
[INFO] [stderr]   |    ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GeneratedCode` is never constructed
[INFO] [stderr]   --> grammar_generator/src/constructor.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | struct GeneratedCode {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated functions are never used
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:19:12
[INFO] [stderr]     |
[INFO] [stderr] 18  | impl GeneratedCode {
[INFO] [stderr]     | ------------------ associated functions in this implementation
[INFO] [stderr] 19  |     pub fn new(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 29  |     fn generate(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Vec<String> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 49  |     fn generate_rules_enum(symbol_table: &SymbolTable) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61  |     fn match_rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71  |     fn rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 162 |     fn rhs(
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 186 |     fn ordered_choice(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 214 |     fn sequence(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |     fn atom(
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 279 |     fn optional(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 302 |     fn one_or_more(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 325 |     fn zero_or_more(
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 349 |     fn and_predicate(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 373 |     fn not_predicate(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 396 |     fn nucleus(
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 429 |     fn subexpression(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 451 |     fn var_name(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 467 |     fn terminal(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SymbolTable` is never constructed
[INFO] [stderr]  --> grammar_generator/src/symbol_table.rs:6:12
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct SymbolTable<'a> {
[INFO] [stderr]   |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]   --> grammar_generator/src/symbol_table.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stderr]    | ------------------------ associated items in this implementation
[INFO] [stderr] 12 |     pub fn new(tree: &Tree, source: &'a String) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     pub fn get_names(&self) -> &Vec<String> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     pub fn print(&self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     fn run_duplication_check(&mut self) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 52 |     pub fn create_symbol_table_from_tree(&mut self, tree: &Tree) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 69 |     fn create_symbol_table_from_tree_kernel(&mut self, tree: &Tree, index: Key) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Reference` is never used
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:12:10
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub enum Reference {
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Reference` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BinaryTree_WO` is never constructed
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct BinaryTree_WO {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> grammar_generator/src/binary_wo.rs:34:12
[INFO] [stderr]     |
[INFO] [stderr] 33  | impl BinaryTree_WO {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr] 34  |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 42  |     pub fn push(&mut self, reference: Reference, lhs: Option<Key>, rhs: Option<Key>) -> Key {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 54  |     pub fn print(&self, index: Key) {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 58  |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 78  |     pub fn to_string(&self, index: Key) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  |     fn match_ref(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |     fn to_string_kernel(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 121 |     fn and_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 139 |     fn not_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 156 |     fn one_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 172 |     fn zero_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 188 |     fn subexpression(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 204 |     fn optional(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 221 |     fn ordered_choice(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 239 |     fn sequence(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 256 |     fn terminal(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 271 |     fn var_name(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BinaryNode` is never constructed
[INFO] [stderr]    --> grammar_generator/src/binary_wo.rs:291:12
[INFO] [stderr]     |
[INFO] [stderr] 291 | pub struct BinaryNode {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `path` is never read
[INFO] [stderr]   --> grammar_parser/tests/cache_performance_profiler.rs:53:13
[INFO] [stderr]    |
[INFO] [stderr] 53 |     let mut path = release_path;
[INFO] [stderr]    |             ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:571:13
[INFO] [stderr]     |
[INFO] [stderr] 571 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:600:13
[INFO] [stderr]     |
[INFO] [stderr] 600 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:629:13
[INFO] [stderr]     |
[INFO] [stderr] 629 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:659:13
[INFO] [stderr]     |
[INFO] [stderr] 659 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: methods `push` and `check_symbol` are never used
[INFO] [stderr]   --> grammar_generator/src/symbol_table.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stderr]    | ------------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `print` and `print_kernel` are never used
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:54:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | impl BinaryTree_WO {
[INFO] [stderr]    | ------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 54 |     pub fn print(&self, index: Key) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 58 |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `grammar_generator` (lib) generated 42 warnings (run `cargo fix --lib -p grammar_generator` to apply 24 suggestions)
[INFO] [stderr] warning: `grammar_parser` (test "cache_performance_profiler") generated 1 warning
[INFO] [stderr] warning: `grammar_generator` (lib test) generated 37 warnings (31 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cache-8dbf78cddb95e2d7)
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grammar_generator-572476b9af6ffbcc)
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test symbol_table::tests::test_2 ... ok
[INFO] [stdout] test constructor::tests::test_2 ... ok
[INFO] [stdout] test constructor::tests::test_3 ... ok
[INFO] [stdout] test constructor::tests::test_4 ... ok
[INFO] [stdout] test constructor::tests::test_java_grammar_parser ... ok
[INFO] [stdout] test constructor::tests::test_5 ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grammar_parser-61cb8fe494ef7de4)
[INFO] [stdout] test constructor::tests::test ... ok
[INFO] [stdout] test symbol_table::tests::test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 50 tests
[INFO] [stdout] test alphabet_lower::tests::test_alphabet_lower_true2 ... ok
[INFO] [stdout] test alphabet_lower::tests::test_alphabet_lower_false ... ok
[INFO] [stdout] test ascii::tests::test_ascii_true ... ok
[INFO] [stdout] test alphabet_lower::tests::test_alphabet_lower_true ... ok
[INFO] [stdout] test ascii::tests::test_ascii_true2 ... ok
[INFO] [stdout] test alphabet_upper::tests::test_alphabet_upper_true_with_var_name ... ok
[INFO] [stdout] test alphabet_upper::tests::test_alphabet_upper_true ... ok
[INFO] [stdout] test alphabet_upper::tests::test_alphabet_upper_false ... ok
[INFO] [stdout] test atom::tests::test_atom_true ... ok
[INFO] [stdout] test atom::tests::test_nucleus_char ... ok
[INFO] [stdout] test grammar::tests::test_grammar_true ... ok
[INFO] [stdout] test num::tests::test_num_false ... ok
[INFO] [stdout] test nucleus::tests::test_nucleus_char ... ok
[INFO] [stdout] test grammar::tests::test_basic_publisher_short ... ok
[INFO] [stdout] test nucleus::tests::test_nucleus_true ... ok
[INFO] [stdout] test num::tests::test_num_true ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true2 ... ok
[INFO] [stdout] test grammar::tests::test_grammar_true2 ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_false ... ok
[INFO] [stdout] test rhs::tests::test_rhs_true ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true3 ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true4 ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true5 ... ok
[INFO] [stdout] test grammar::tests::test_basic_publisher ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true ... ok
[INFO] [stdout] test rule::tests::test_rule_true2 ... ok
[INFO] [stdout] test rule::tests::test_rule_true ... ok
[INFO] [stdout] test rule::tests::test_rule_true7 ... ok
[INFO] [stdout] test semantic_instructions::tests::test_semantic_instruction_true ... ok
[INFO] [stdout] test grammar::tests::test_grammar_true3 ... ok
[INFO] [stdout] test rule::tests::test_rule_true3 ... ok
[INFO] [stdout] test spaces::tests::test_num_true ... ok
[INFO] [stdout] test specials::tests::test_specials_true ... ok
[INFO] [stdout] test terminal::tests::test_terminal_false ... ok
[INFO] [stdout] test specials::tests::test_specials_false ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true1 ... ok
[INFO] [stdout] test spaces::tests::test_num_false ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true2 ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true4 ... ok
[INFO] [stdout] test rule::tests::test_rule_true5 ... ok
[INFO] [stdout] test grammar::tests::test_my_cache_4 ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true3 ... ok
[INFO] [stdout] test var_name::tests::test_var_name_false ... ok
[INFO] [stdout] test var_name::tests::test_var_name_true2 ... ok
[INFO] [stdout] test var_name::tests::test_var_name_true ... ok
[INFO] [stdout] test semantic_instructions::tests::test_semantic_instruction_true_cache ... ok
[INFO] [stdout] test var_name::tests::test_var_name_false2 ... ok
[INFO] [stdout] test rule::tests::test_rule_true4 ... ok
[INFO] [stdout] test rule::tests::test_rule_true6 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cache_performance_profiler.rs (/opt/rustwide/target/debug/deps/cache_performance_profiler-bbc46f4b794fa6a2)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test profile_caches ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- profile_caches stdout ----
[INFO] [stdout] thread 'profile_caches' panicked at grammar_parser/tests/cache_performance_profiler.rs:20:35:
[INFO] [stdout] No reason for it to fail: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x555a75966325 - std::backtrace_rs::backtrace::libunwind::trace::h59d96bdb08384354
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stdout]    1:     0x555a75966325 - std::backtrace_rs::backtrace::trace_unsynchronized::h9cf5becacfc93fba
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x555a75966325 - std::sys_common::backtrace::_print_fmt::h10b76d10405dbd48
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x555a75966325 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h6ed9e62a156d84e4
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x555a7598cc2b - core::fmt::rt::Argument::fmt::h645c680983f03c9f
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/rt.rs:165:63
[INFO] [stdout]    5:     0x555a7598cc2b - core::fmt::write::h8bcd80919a02be29
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/mod.rs:1169:21
[INFO] [stdout]    6:     0x555a75963b5f - std::io::Write::write_fmt::h8d0c47c662cad79c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/io/mod.rs:1835:15
[INFO] [stdout]    7:     0x555a759660fe - std::sys_common::backtrace::_print::h6306f131a28d62b0
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x555a759660fe - std::sys_common::backtrace::print::h7079288e0a26dfcc
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x555a75967b29 - std::panicking::default_hook::{{closure}}::hb063ecec81a736ba
[INFO] [stdout]   10:     0x555a759677ee - std::panicking::default_hook::hd56ee406bf547b5c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:295:9
[INFO] [stdout]   11:     0x555a7592eaca - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::he5eacdef44c8728f
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   12:     0x555a7592eaca - test::test_main::{{closure}}::h0ec9aed229e79095
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x555a7596812b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hcbd0d80e1ad4e4f9
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   14:     0x555a7596812b - std::panicking::rust_panic_with_hook::h624aa3ca42ebb8f2
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:799:13
[INFO] [stdout]   15:     0x555a75967ea4 - std::panicking::begin_panic_handler::{{closure}}::hbc4e76194a5e287c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:664:13
[INFO] [stdout]   16:     0x555a759667e9 - std::sys_common::backtrace::__rust_end_short_backtrace::h847fedc9d1ff7b6d
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x555a75967bd7 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:652:5
[INFO] [stdout]   18:     0x555a758e98a3 - core::panicking::panic_fmt::hec11a924b87ce965
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x555a758e9cf6 - core::result::unwrap_failed::h382691b96ca8c13a
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/result.rs:1654:5
[INFO] [stdout]   20:     0x555a758f4b9f - core::result::Result<T,E>::expect::hafdad9887e98a2af
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/result.rs:1034:23
[INFO] [stdout]   21:     0x555a758f510b - cache_performance_profiler::write_to_performance_profile::h19c5f588a63b00ab
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:20:5
[INFO] [stdout]   22:     0x555a758f5a4e - cache_performance_profiler::profile_cache_kernel::h9fab64d2339cf9ce
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:82:5
[INFO] [stdout]   23:     0x555a758f5b40 - cache_performance_profiler::profile_caches::h87aee24bdadf8d94
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:90:5
[INFO] [stdout]   24:     0x555a758f5aa7 - cache_performance_profiler::profile_caches::{{closure}}::hd1ffc1fc3c72e12e
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:86:20
[INFO] [stdout]   25:     0x555a758f3a46 - core::ops::function::FnOnce::call_once::hb8a678c3abba9a76
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x555a759334ab - core::ops::function::FnOnce::call_once::h2e43a8f6f3d94b99
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x555a759334ab - test::__rust_begin_short_backtrace::h214c9f2d2d3fee90
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:625:18
[INFO] [stdout]   28:     0x555a75932bb1 - test::run_test_in_process::{{closure}}::h510b7ba7990692a5
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:60
[INFO] [stdout]   29:     0x555a75932bb1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4157186197a93871
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   30:     0x555a75932bb1 - std::panicking::try::do_call::h1bf2463bccd4b28c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stdout]   31:     0x555a75932bb1 - std::panicking::try::hd6d4808c9fab4fa5
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stdout]   32:     0x555a75932bb1 - std::panic::catch_unwind::hd5641d97d123f9f2
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stdout]   33:     0x555a75932bb1 - test::run_test_in_process::hc273b71c8b878a4c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:27
[INFO] [stdout]   34:     0x555a75932bb1 - test::run_test::{{closure}}::h6838df834eb8467e
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:569:43
[INFO] [stdout]   35:     0x555a758fb574 - test::run_test::{{closure}}::h608b98ecff5665fb
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:599:41
[INFO] [stdout]   36:     0x555a758fb574 - std::sys_common::backtrace::__rust_begin_short_backtrace::hdc4182b97d1042e9
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   37:     0x555a758fffa2 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h571773fd21d674c8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:542:17
[INFO] [stdout]   38:     0x555a758fffa2 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hdcd384cf2fa70ba3
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   39:     0x555a758fffa2 - std::panicking::try::do_call::h4f1a44bd81423be1
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stdout]   40:     0x555a758fffa2 - std::panicking::try::h5e02afcb81dcd361
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stdout]   41:     0x555a758fffa2 - std::panic::catch_unwind::h022f75775bfd8c45
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stdout]   42:     0x555a758fffa2 - std::thread::Builder::spawn_unchecked_::{{closure}}::hf5a62e9e4e6df1f8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:541:30
[INFO] [stdout]   43:     0x555a758fffa2 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d56360aeb9509a7
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x555a7596c30b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7a343dc551c06baa
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   45:     0x555a7596c30b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h30b8111cbaa644f3
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   46:     0x555a7596c30b - std::sys::pal::unix::thread::Thread::new::thread_start::h7404e134e61e7a11
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   47:     0x7f0c4c44eac3 - <unknown>
[INFO] [stdout]   48:     0x7f0c4c4dfa04 - __clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     profile_caches
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p grammar_parser --test cache_performance_profiler`
[INFO] running `Command { std: "docker" "inspect" "4b38afb11bf00d874db517080a493459dde4c05c3decfc0bb28d16d7f5d5d5af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4b38afb11bf00d874db517080a493459dde4c05c3decfc0bb28d16d7f5d5d5af", kill_on_drop: false }`
[INFO] [stdout] 4b38afb11bf00d874db517080a493459dde4c05c3decfc0bb28d16d7f5d5d5af
[INFO] testing TimMeiwald/ppparser against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTimMeiwald%2Fppparser" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/TimMeiwald/ppparser on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-2-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/TimMeiwald/ppparser
[INFO] finished tweaking git repo https://github.com/TimMeiwald/ppparser
[INFO] tweaked toml for git repo https://github.com/TimMeiwald/ppparser written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/TimMeiwald/ppparser 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" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 283d9fb0753443da3199633df4c91c2519eee6ef176ea7ed0874c5160e2a6751
[INFO] running `Command { std: "docker" "start" "-a" "283d9fb0753443da3199633df4c91c2519eee6ef176ea7ed0874c5160e2a6751", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "283d9fb0753443da3199633df4c91c2519eee6ef176ea7ed0874c5160e2a6751", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "283d9fb0753443da3199633df4c91c2519eee6ef176ea7ed0874c5160e2a6751", kill_on_drop: false }`
[INFO] [stdout] 283d9fb0753443da3199633df4c91c2519eee6ef176ea7ed0874c5160e2a6751
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] aa3fd8680186433f9a1879d5876db4cb6e687f770c563ee20eab3e2eb108979f
[INFO] running `Command { std: "docker" "start" "-a" "aa3fd8680186433f9a1879d5876db4cb6e687f770c563ee20eab3e2eb108979f", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.53
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.5
[INFO] [stderr]    Compiling num-iter v0.1.44
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling num v0.4.1
[INFO] [stderr]    Compiling rules v0.6.0 (/opt/rustwide/workdir/rules)
[INFO] [stderr]    Compiling cache v0.6.0 (/opt/rustwide/workdir/cache)
[INFO] [stderr]    Compiling publisher v0.6.0 (/opt/rustwide/workdir/publisher)
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> publisher/src/tree.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> publisher/src/tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::IndexMut`
[INFO] [stdout]  --> publisher/src/tree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::IndexMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> publisher/src/tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> publisher/src/tree.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> publisher/src/tree.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]  --> publisher/src/tree.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::Index;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_key` is never used
[INFO] [stdout]    --> publisher/src/tree.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Tree {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling parser_core v0.6.0 (/opt/rustwide/workdir/parser_core)
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> parser_core/src/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> parser_core/src/var_name.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::{Node, Publisher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stdout]  --> parser_core/src/var_name.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stdout]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_key` is assigned to, but never used
[INFO] [stdout]    --> parser_core/src/var_name.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let last_key: Option<Key>;
[INFO] [stdout]     |                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_key` is never read
[INFO] [stdout]    --> parser_core/src/var_name.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             last_key = res.last_node();
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_parser v0.6.0 (/opt/rustwide/workdir/grammar_parser)
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sequence::sequence`
[INFO] [stdout]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_optional`
[INFO] [stdout]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parser_core::{Context, _optional};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tree`
[INFO] [stdout]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::{Publisher, Tree};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_generator v0.6.0 (/opt/rustwide/workdir/grammar_generator)
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_runner v0.6.0 (/opt/rustwide/workdir/grammar_runner)
[INFO] [stdout] warning: unused import: `BinaryNode`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rules::Rules`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rules::Rules;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 _ => return panic!("rhs"),
[INFO] [stdout]     |                      ^^^^^^^-------------
[INFO] [stdout]     |                      |      |
[INFO] [stdout]     |                      |      any code following this expression is unreachable
[INFO] [stdout]     |                      unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Publisher`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Publisher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `acc`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_lines` is never used
[INFO] [stdout]  --> grammar_generator/src/lib.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn count_lines(source: &String, start_position: u32) -> u32 {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratedCode` is never constructed
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct GeneratedCode {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:19:12
[INFO] [stdout]     |
[INFO] [stdout] 18  | impl GeneratedCode {
[INFO] [stdout]     | ------------------ associated functions in this implementation
[INFO] [stdout] 19  |     pub fn new(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29  |     fn generate(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     fn generate_rules_enum(symbol_table: &SymbolTable) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     fn match_rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71  |     fn rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn rhs(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn ordered_choice(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn sequence(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn atom(
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn optional(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     fn one_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn zero_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     fn and_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     fn not_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     fn nucleus(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     fn subexpression(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     fn var_name(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     fn terminal(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SymbolTable` is never constructed
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct SymbolTable<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(tree: &Tree, source: &'a String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn get_names(&self) -> &Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn print(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn run_duplication_check(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn create_symbol_table_from_tree(&mut self, tree: &Tree) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     fn create_symbol_table_from_tree_kernel(&mut self, tree: &Tree, index: Key) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Reference` is never used
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Reference {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Reference` 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: struct `BinaryTree_WO` is never constructed
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:34:12
[INFO] [stdout]     |
[INFO] [stdout] 33  | impl BinaryTree_WO {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 34  |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42  |     pub fn push(&mut self, reference: Reference, lhs: Option<Key>, rhs: Option<Key>) -> Key {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54  |     pub fn print(&self, index: Key) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58  |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78  |     pub fn to_string(&self, index: Key) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  |     fn match_ref(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn to_string_kernel(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn and_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     fn not_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn one_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn zero_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn subexpression(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     fn optional(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     fn ordered_choice(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     fn sequence(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     fn terminal(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     fn var_name(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryNode` is never constructed
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:291:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub struct BinaryNode {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling java_parser v0.6.0 (/opt/rustwide/workdir/java_parser)
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.52s
[INFO] running `Command { std: "docker" "inspect" "aa3fd8680186433f9a1879d5876db4cb6e687f770c563ee20eab3e2eb108979f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aa3fd8680186433f9a1879d5876db4cb6e687f770c563ee20eab3e2eb108979f", kill_on_drop: false }`
[INFO] [stdout] aa3fd8680186433f9a1879d5876db4cb6e687f770c563ee20eab3e2eb108979f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 57b22e58a3d16c909b582582b08137b6ff4bdfd3bafa0b6adc9bacb0a5619253
[INFO] running `Command { std: "docker" "start" "-a" "57b22e58a3d16c909b582582b08137b6ff4bdfd3bafa0b6adc9bacb0a5619253", kill_on_drop: false }`
[INFO] [stderr]    Compiling rules v0.6.0 (/opt/rustwide/workdir/rules)
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> publisher/src/tree.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> publisher/src/tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::IndexMut`
[INFO] [stdout]  --> publisher/src/tree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::IndexMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> publisher/src/tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> publisher/src/tree.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> publisher/src/tree.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]  --> publisher/src/tree.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::Index;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cache v0.6.0 (/opt/rustwide/workdir/cache)
[INFO] [stdout] warning: method `get_key` is never used
[INFO] [stdout]    --> publisher/src/tree.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Tree {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling publisher v0.6.0 (/opt/rustwide/workdir/publisher)
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> parser_core/src/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> parser_core/src/var_name.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::{Node, Publisher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stdout]  --> parser_core/src/var_name.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stdout]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_key` is assigned to, but never used
[INFO] [stdout]    --> parser_core/src/var_name.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let last_key: Option<Key>;
[INFO] [stdout]     |                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_key` is never read
[INFO] [stdout]    --> parser_core/src/var_name.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             last_key = res.last_node();
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sequence::sequence`
[INFO] [stdout]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_optional`
[INFO] [stdout]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parser_core::{Context, _optional};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tree`
[INFO] [stdout]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::{Publisher, Tree};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryNode`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling parser_core v0.6.0 (/opt/rustwide/workdir/parser_core)
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_parser v0.6.0 (/opt/rustwide/workdir/grammar_parser)
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rules::Rules`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rules::Rules;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 _ => return panic!("rhs"),
[INFO] [stdout]     |                      ^^^^^^^-------------
[INFO] [stdout]     |                      |      |
[INFO] [stdout]     |                      |      any code following this expression is unreachable
[INFO] [stdout]     |                      unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Publisher`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Publisher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `acc`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_lines` is never used
[INFO] [stdout]  --> grammar_generator/src/lib.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn count_lines(source: &String, start_position: u32) -> u32 {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratedCode` is never constructed
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct GeneratedCode {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling java_parser v0.6.0 (/opt/rustwide/workdir/java_parser)
[INFO] [stderr]    Compiling grammar_runner v0.6.0 (/opt/rustwide/workdir/grammar_runner)
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:19:12
[INFO] [stdout]     |
[INFO] [stdout] 18  | impl GeneratedCode {
[INFO] [stdout]     | ------------------ associated functions in this implementation
[INFO] [stdout] 19  |     pub fn new(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29  |     fn generate(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     fn generate_rules_enum(symbol_table: &SymbolTable) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     fn match_rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71  |     fn rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn rhs(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn ordered_choice(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn sequence(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn atom(
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn optional(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     fn one_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn zero_or_more(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     fn and_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     fn not_predicate(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     fn nucleus(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     fn subexpression(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     fn var_name(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     fn terminal(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SymbolTable` is never constructed
[INFO] [stdout]  --> grammar_generator/src/symbol_table.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct SymbolTable<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(tree: &Tree, source: &'a String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn get_names(&self) -> &Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn print(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn run_duplication_check(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn create_symbol_table_from_tree(&mut self, tree: &Tree) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     fn create_symbol_table_from_tree_kernel(&mut self, tree: &Tree, index: Key) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Reference` is never used
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Reference {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Reference` 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: struct `BinaryTree_WO` is never constructed
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:34:12
[INFO] [stdout]     |
[INFO] [stdout] 33  | impl BinaryTree_WO {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 34  |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42  |     pub fn push(&mut self, reference: Reference, lhs: Option<Key>, rhs: Option<Key>) -> Key {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54  |     pub fn print(&self, index: Key) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58  |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78  |     pub fn to_string(&self, index: Key) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  |     fn match_ref(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn to_string_kernel(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn and_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     fn not_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn one_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn zero_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn subexpression(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     fn optional(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     fn ordered_choice(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     fn sequence(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     fn terminal(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     fn var_name(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryNode` is never constructed
[INFO] [stdout]    --> grammar_generator/src/binary_wo.rs:291:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub struct BinaryNode {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> publisher/src/tree.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> publisher/src/tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::IndexMut`
[INFO] [stdout]  --> publisher/src/tree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::IndexMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> publisher/src/tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> publisher/src/tree.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> publisher/src/tree.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]  --> publisher/src/tree.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::Index;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]    --> publisher/src/tree.rs:300:17
[INFO] [stdout]     |
[INFO] [stdout] 300 |             let root = t.get_node(Key(0));
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y2`
[INFO] [stdout]    --> publisher/src/tree.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let y2 = t.get_node(Key(2));
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_key` is never used
[INFO] [stdout]    --> publisher/src/tree.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Tree {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sequence::sequence`
[INFO] [stdout]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_optional`
[INFO] [stdout]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parser_core::{Context, _optional};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tree`
[INFO] [stdout]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::{Publisher, Tree};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `path` is never read
[INFO] [stdout]   --> grammar_parser/tests/cache_performance_profiler.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut path = release_path;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> parser_core/src/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> parser_core/src/var_name.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::{Node, Publisher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stdout]  --> parser_core/src/var_name.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stdout]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `only_true_tree`
[INFO] [stdout]    --> grammar_parser/src/grammar.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let only_true_tree = context.stack.borrow().clear_false();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_only_true_tree`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_key` is assigned to, but never used
[INFO] [stdout]    --> parser_core/src/var_name.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let last_key: Option<Key>;
[INFO] [stdout]     |                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_key` is never read
[INFO] [stdout]    --> parser_core/src/var_name.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             last_key = res.last_node();
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling grammar_generator v0.6.0 (/opt/rustwide/workdir/grammar_generator)
[INFO] [stdout] warning: unused import: `BinaryNode`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::count_lines`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::count_lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Node`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use publisher::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Tree`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use publisher::Tree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rules::Rules`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rules::Rules;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct BinaryTree_WO {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 _ => return panic!("rhs"),
[INFO] [stdout]     |                      ^^^^^^^-------------
[INFO] [stdout]     |                      |      |
[INFO] [stdout]     |                      |      any code following this expression is unreachable
[INFO] [stdout]     |                      unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `publisher::Publisher`
[INFO] [stdout]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use publisher::Publisher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `acc`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stdout]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |         mut out_tree: &mut BinaryTree_WO,
[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]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_table`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         symbol_table: &SymbolTable,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:571:13
[INFO] [stdout]     |
[INFO] [stdout] 571 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:600:13
[INFO] [stdout]     |
[INFO] [stdout] 600 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:629:13
[INFO] [stdout]     |
[INFO] [stdout] 629 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen_code`
[INFO] [stdout]    --> grammar_generator/src/constructor.rs:659:13
[INFO] [stdout]     |
[INFO] [stdout] 659 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push` and `check_symbol` are never used
[INFO] [stdout]   --> grammar_generator/src/symbol_table.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stdout]    | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `print` and `print_kernel` are never used
[INFO] [stdout]   --> grammar_generator/src/binary_wo.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl BinaryTree_WO {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn print(&self, index: Key) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 37 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.40s
[INFO] running `Command { std: "docker" "inspect" "57b22e58a3d16c909b582582b08137b6ff4bdfd3bafa0b6adc9bacb0a5619253", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57b22e58a3d16c909b582582b08137b6ff4bdfd3bafa0b6adc9bacb0a5619253", kill_on_drop: false }`
[INFO] [stdout] 57b22e58a3d16c909b582582b08137b6ff4bdfd3bafa0b6adc9bacb0a5619253
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 28c1d0d0163e790ea173a77638dadfe1b1822db260158e948eadfadfa7d1db0d
[INFO] running `Command { std: "docker" "start" "-a" "28c1d0d0163e790ea173a77638dadfe1b1822db260158e948eadfadfa7d1db0d", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]   --> publisher/src/trait_publisher.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::rc::Rc;
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::RefCell`
[INFO] [stderr]  --> publisher/src/tree.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::cell::RefCell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::marker::PhantomData`
[INFO] [stderr]  --> publisher/src/tree.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::marker::PhantomData;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::IndexMut`
[INFO] [stderr]  --> publisher/src/tree.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::ops::IndexMut;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]  --> publisher/src/tree.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::rc::Rc;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread`
[INFO] [stderr]  --> publisher/src/tree.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::thread;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]   --> publisher/src/tree.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::time::Duration;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Index`
[INFO] [stderr]  --> publisher/src/tree.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::ops::Index;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_key` is never used
[INFO] [stderr]    --> publisher/src/tree.rs:141:8
[INFO] [stderr]     |
[INFO] [stderr] 114 | impl Tree {
[INFO] [stderr]     | --------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 141 |     fn get_key(&self, node: &Node) -> Key {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `root`
[INFO] [stderr]    --> publisher/src/tree.rs:300:17
[INFO] [stderr]     |
[INFO] [stderr] 300 |             let root = t.get_node(Key(0));
[INFO] [stderr]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `y2`
[INFO] [stderr]    --> publisher/src/tree.rs:307:13
[INFO] [stderr]     |
[INFO] [stderr] 307 |         let y2 = t.get_node(Key(2));
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stderr] 
[INFO] [stderr] warning: `publisher` (lib) generated 9 warnings (run `cargo fix --lib -p publisher` to apply 7 suggestions)
[INFO] [stderr] warning: `publisher` (lib test) generated 11 warnings (9 duplicates)
[INFO] [stderr] warning: unused import: `publisher::Tree`
[INFO] [stderr]  --> parser_core/src/context.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use publisher::Tree;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> parser_core/src/var_name.rs:5:17
[INFO] [stderr]   |
[INFO] [stderr] 5 | use publisher::{Node, Publisher};
[INFO] [stderr]   |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Duration`, `self`, `thread`
[INFO] [stderr]  --> parser_core/src/var_name.rs:7:11
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::{thread, time::{self, Duration}};
[INFO] [stderr]   |           ^^^^^^         ^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `last_key` is assigned to, but never used
[INFO] [stderr]    --> parser_core/src/var_name.rs:119:17
[INFO] [stderr]     |
[INFO] [stderr] 119 |             let last_key: Option<Key>;
[INFO] [stderr]     |                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_last_key` instead
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `last_key` is never read
[INFO] [stderr]    --> parser_core/src/var_name.rs:122:13
[INFO] [stderr]     |
[INFO] [stderr] 122 |             last_key = res.last_node();
[INFO] [stderr]     |             ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `parser_core` (lib) generated 5 warnings (run `cargo fix --lib -p parser_core` to apply 3 suggestions)
[INFO] [stderr] warning: `parser_core` (lib test) generated 5 warnings (5 duplicates)
[INFO] [stderr] warning: unused import: `sequence::sequence`
[INFO] [stderr]  --> grammar_parser/src/atom.rs:9:67
[INFO] [stderr]   |
[INFO] [stderr] 9 |     and_predicate, not_predicate, nucleus, one_or_more, optional, sequence::sequence, whitespace, zero_or_more
[INFO] [stderr]   |                                                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `_optional`
[INFO] [stderr]  --> grammar_parser/src/grammar.rs:2:28
[INFO] [stderr]   |
[INFO] [stderr] 2 | use parser_core::{Context, _optional};
[INFO] [stderr]   |                            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Tree`
[INFO] [stderr]  --> grammar_parser/src/nucleus.rs:6:28
[INFO] [stderr]   |
[INFO] [stderr] 6 | use publisher::{Publisher, Tree};
[INFO] [stderr]   |                            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `only_true_tree`
[INFO] [stderr]    --> grammar_parser/src/grammar.rs:124:13
[INFO] [stderr]     |
[INFO] [stderr] 124 |         let only_true_tree = context.stack.borrow().clear_false();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_only_true_tree`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `grammar_parser` (lib) generated 3 warnings (run `cargo fix --lib -p grammar_parser` to apply 3 suggestions)
[INFO] [stderr] warning: `grammar_parser` (lib test) generated 4 warnings (3 duplicates)
[INFO] [stderr] warning: unused import: `BinaryNode`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::binary_wo::{BinaryNode, BinaryTree_WO, Reference};
[INFO] [stderr]   |                        ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::count_lines`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::count_lines;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Node`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use publisher::Node;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::format`
[INFO] [stderr]  --> grammar_generator/src/constructor.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::fmt::format;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::count_lines`
[INFO] [stderr]  --> grammar_generator/src/symbol_table.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::count_lines;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::format`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::fmt::format;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::count_lines`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::count_lines;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::symbol_table::SymbolTable`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::symbol_table::SymbolTable;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Node`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use publisher::Node;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Tree`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use publisher::Tree;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rules::Rules`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use rules::Rules;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type `BinaryTree_WO` should have an upper camel case name
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct BinaryTree_WO {
[INFO] [stderr]    |            ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BinaryTreeWo`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:180:22
[INFO] [stderr]     |
[INFO] [stderr] 180 |                 _ => return panic!("rhs"),
[INFO] [stderr]     |                      ^^^^^^^-------------
[INFO] [stderr]     |                      |      |
[INFO] [stderr]     |                      |      any code following this expression is unreachable
[INFO] [stderr]     |                      unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `publisher::Publisher`
[INFO] [stderr]  --> grammar_generator/src/binary_wo.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use publisher::Publisher;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> grammar_generator/src/constructor.rs:21:13
[INFO] [stderr]    |
[INFO] [stderr] 21 |         let mut s = GeneratedCode {
[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: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:119:12
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `acc`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:140:13
[INFO] [stderr]     |
[INFO] [stderr] 140 |         let acc = String::with_capacity(max_comment_size + 3);
[INFO] [stderr]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_acc`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:137:16
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:187:9
[INFO] [stderr]     |
[INFO] [stderr] 187 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:215:9
[INFO] [stderr]     |
[INFO] [stderr] 215 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:243:9
[INFO] [stderr]     |
[INFO] [stderr] 243 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:280:9
[INFO] [stderr]     |
[INFO] [stderr] 280 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:303:9
[INFO] [stderr]     |
[INFO] [stderr] 303 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:326:9
[INFO] [stderr]     |
[INFO] [stderr] 326 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:350:9
[INFO] [stderr]     |
[INFO] [stderr] 350 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:374:9
[INFO] [stderr]     |
[INFO] [stderr] 374 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:397:9
[INFO] [stderr]     |
[INFO] [stderr] 397 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:430:9
[INFO] [stderr]     |
[INFO] [stderr] 430 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:453:9
[INFO] [stderr]     |
[INFO] [stderr] 453 |         symbol_table: &SymbolTable,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:452:9
[INFO] [stderr]     |
[INFO] [stderr] 452 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol_table`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:469:9
[INFO] [stderr]     |
[INFO] [stderr] 469 |         symbol_table: &SymbolTable,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_table`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:468:9
[INFO] [stderr]     |
[INFO] [stderr] 468 |         mut out_tree: &mut BinaryTree_WO,
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `index`
[INFO] [stderr]   --> grammar_generator/src/symbol_table.rs:33:28
[INFO] [stderr]    |
[INFO] [stderr] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stderr]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stderr] 
[INFO] [stderr] warning: function `count_lines` is never used
[INFO] [stderr]  --> grammar_generator/src/lib.rs:4:4
[INFO] [stderr]   |
[INFO] [stderr] 4 | fn count_lines(source: &String, start_position: u32) -> u32 {
[INFO] [stderr]   |    ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GeneratedCode` is never constructed
[INFO] [stderr]   --> grammar_generator/src/constructor.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | struct GeneratedCode {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated functions are never used
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:19:12
[INFO] [stderr]     |
[INFO] [stderr] 18  | impl GeneratedCode {
[INFO] [stderr]     | ------------------ associated functions in this implementation
[INFO] [stderr] 19  |     pub fn new(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 29  |     fn generate(symbol_table: &SymbolTable, tree: &Tree, source: &String) -> Vec<String> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 49  |     fn generate_rules_enum(symbol_table: &SymbolTable) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61  |     fn match_rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71  |     fn rule(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 119 |     fn lhs(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 137 |     fn comment(symbol_table: &SymbolTable, tree: &Tree, source: &String, index: Key) -> String {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 162 |     fn rhs(
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 186 |     fn ordered_choice(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 214 |     fn sequence(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |     fn atom(
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 279 |     fn optional(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 302 |     fn one_or_more(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 325 |     fn zero_or_more(
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 349 |     fn and_predicate(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 373 |     fn not_predicate(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 396 |     fn nucleus(
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 429 |     fn subexpression(
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 451 |     fn var_name(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 467 |     fn terminal(
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SymbolTable` is never constructed
[INFO] [stderr]  --> grammar_generator/src/symbol_table.rs:6:12
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct SymbolTable<'a> {
[INFO] [stderr]   |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]   --> grammar_generator/src/symbol_table.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stderr]    | ------------------------ associated items in this implementation
[INFO] [stderr] 12 |     pub fn new(tree: &Tree, source: &'a String) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     pub fn get_names(&self) -> &Vec<String> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     pub fn print(&self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     fn run_duplication_check(&mut self) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 52 |     pub fn create_symbol_table_from_tree(&mut self, tree: &Tree) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 69 |     fn create_symbol_table_from_tree_kernel(&mut self, tree: &Tree, index: Key) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Reference` is never used
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:12:10
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub enum Reference {
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Reference` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BinaryTree_WO` is never constructed
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct BinaryTree_WO {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> grammar_generator/src/binary_wo.rs:34:12
[INFO] [stderr]     |
[INFO] [stderr] 33  | impl BinaryTree_WO {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr] 34  |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 42  |     pub fn push(&mut self, reference: Reference, lhs: Option<Key>, rhs: Option<Key>) -> Key {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 54  |     pub fn print(&self, index: Key) {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 58  |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 78  |     pub fn to_string(&self, index: Key) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  |     fn match_ref(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |     fn to_string_kernel(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 121 |     fn and_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 139 |     fn not_predicate(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 156 |     fn one_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 172 |     fn zero_or_more(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 188 |     fn subexpression(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 204 |     fn optional(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 221 |     fn ordered_choice(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 239 |     fn sequence(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 256 |     fn terminal(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 271 |     fn var_name(&self, stack: &mut Vec<String>, index: Key) -> Key {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BinaryNode` is never constructed
[INFO] [stderr]    --> grammar_generator/src/binary_wo.rs:291:12
[INFO] [stderr]     |
[INFO] [stderr] 291 | pub struct BinaryNode {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `path` is never read
[INFO] [stderr]   --> grammar_parser/tests/cache_performance_profiler.rs:53:13
[INFO] [stderr]    |
[INFO] [stderr] 53 |     let mut path = release_path;
[INFO] [stderr]    |             ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:571:13
[INFO] [stderr]     |
[INFO] [stderr] 571 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:600:13
[INFO] [stderr]     |
[INFO] [stderr] 600 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:629:13
[INFO] [stderr]     |
[INFO] [stderr] 629 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gen_code`
[INFO] [stderr]    --> grammar_generator/src/constructor.rs:659:13
[INFO] [stderr]     |
[INFO] [stderr] 659 |         let gen_code = GeneratedCode::new(&sym_table, &tree, src);
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gen_code`
[INFO] [stderr] 
[INFO] [stderr] warning: methods `push` and `check_symbol` are never used
[INFO] [stderr]   --> grammar_generator/src/symbol_table.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<'a> SymbolTable<'a> {
[INFO] [stderr]    | ------------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub fn push(&mut self, index: u32, name: String) {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub fn check_symbol(&self, symbol_name: &str) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `print` and `print_kernel` are never used
[INFO] [stderr]   --> grammar_generator/src/binary_wo.rs:54:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | impl BinaryTree_WO {
[INFO] [stderr]    | ------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 54 |     pub fn print(&self, index: Key) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 58 |     fn print_kernel(&self, index: Key, indent: usize) {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `grammar_generator` (lib) generated 42 warnings (run `cargo fix --lib -p grammar_generator` to apply 24 suggestions)
[INFO] [stderr] warning: `grammar_parser` (test "cache_performance_profiler") generated 1 warning
[INFO] [stderr] warning: `grammar_generator` (lib test) generated 37 warnings (31 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cache-8dbf78cddb95e2d7)
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grammar_generator-572476b9af6ffbcc)
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test constructor::tests::test_2 ... ok
[INFO] [stdout] test constructor::tests::test_4 ... ok
[INFO] [stdout] test constructor::tests::test_5 ... ok
[INFO] [stdout] test constructor::tests::test_3 ... ok
[INFO] [stdout] test symbol_table::tests::test_2 ... ok
[INFO] [stdout] test constructor::tests::test ... ok
[INFO] [stdout] test constructor::tests::test_java_grammar_parser ... ok
[INFO] [stdout] test symbol_table::tests::test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/grammar_parser-61cb8fe494ef7de4)
[INFO] [stdout] 
[INFO] [stdout] running 50 tests
[INFO] [stdout] test alphabet_lower::tests::test_alphabet_lower_false ... ok
[INFO] [stdout] test alphabet_lower::tests::test_alphabet_lower_true ... ok
[INFO] [stdout] test alphabet_lower::tests::test_alphabet_lower_true2 ... ok
[INFO] [stdout] test alphabet_upper::tests::test_alphabet_upper_false ... ok
[INFO] [stdout] test alphabet_upper::tests::test_alphabet_upper_true ... ok
[INFO] [stdout] test alphabet_upper::tests::test_alphabet_upper_true_with_var_name ... ok
[INFO] [stdout] test ascii::tests::test_ascii_true ... ok
[INFO] [stdout] test ascii::tests::test_ascii_true2 ... ok
[INFO] [stdout] test atom::tests::test_nucleus_char ... ok
[INFO] [stdout] test atom::tests::test_atom_true ... ok
[INFO] [stdout] test grammar::tests::test_grammar_true ... ok
[INFO] [stdout] test nucleus::tests::test_nucleus_char ... ok
[INFO] [stdout] test grammar::tests::test_basic_publisher_short ... ok
[INFO] [stdout] test num::tests::test_num_false ... ok
[INFO] [stdout] test num::tests::test_num_true ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_false ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true2 ... ok
[INFO] [stdout] test grammar::tests::test_grammar_true2 ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true3 ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true4 ... ok
[INFO] [stdout] test ordered_choice::tests::test_ordered_choice_true5 ... ok
[INFO] [stdout] test nucleus::tests::test_nucleus_true ... ok
[INFO] [stdout] test rule::tests::test_rule_true2 ... ok
[INFO] [stdout] test rule::tests::test_rule_true ... ok
[INFO] [stdout] test rule::tests::test_rule_true3 ... ok
[INFO] [stdout] test rule::tests::test_rule_true4 ... ok
[INFO] [stdout] test rule::tests::test_rule_true5 ... ok
[INFO] [stdout] test rule::tests::test_rule_true6 ... ok
[INFO] [stdout] test rule::tests::test_rule_true7 ... ok
[INFO] [stdout] test semantic_instructions::tests::test_semantic_instruction_true ... ok
[INFO] [stdout] test semantic_instructions::tests::test_semantic_instruction_true_cache ... ok
[INFO] [stdout] test spaces::tests::test_num_false ... ok
[INFO] [stdout] test spaces::tests::test_num_true ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true ... ok
[INFO] [stdout] test specials::tests::test_specials_true ... ok
[INFO] [stdout] test terminal::tests::test_terminal_false ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true1 ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true4 ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true2 ... ok
[INFO] [stdout] test terminal::tests::test_terminal_true3 ... ok
[INFO] [stdout] test var_name::tests::test_var_name_false ... ok
[INFO] [stdout] test var_name::tests::test_var_name_false2 ... ok
[INFO] [stdout] test var_name::tests::test_var_name_true2 ... ok
[INFO] [stdout] test var_name::tests::test_var_name_true ... ok
[INFO] [stdout] test rhs::tests::test_rhs_true ... ok
[INFO] [stdout] test specials::tests::test_specials_false ... ok
[INFO] [stdout] test grammar::tests::test_my_cache_4 ... ok
[INFO] [stdout] test grammar::tests::test_basic_publisher ... ok
[INFO] [stdout] test grammar::tests::test_grammar_true3 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cache_performance_profiler.rs (/opt/rustwide/target/debug/deps/cache_performance_profiler-bbc46f4b794fa6a2)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test profile_caches ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- profile_caches stdout ----
[INFO] [stdout] thread 'profile_caches' panicked at grammar_parser/tests/cache_performance_profiler.rs:20:35:
[INFO] [stdout] No reason for it to fail: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55fd16bee3c5 - std::backtrace_rs::backtrace::libunwind::trace::he49dc9a9e3164223
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stdout]    1:     0x55fd16bee3c5 - std::backtrace_rs::backtrace::trace_unsynchronized::h3a3e77c68030aa6b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55fd16bee3c5 - std::sys_common::backtrace::_print_fmt::h9479ad2f99afd5d4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x55fd16bee3c5 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hfb01aa1fa3fb1821
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55fd16c14c6b - core::fmt::rt::Argument::fmt::h125e56152abbc1c3
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/fmt/rt.rs:165:63
[INFO] [stdout]    5:     0x55fd16c14c6b - core::fmt::write::hb0ab4ff05ccfe741
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/fmt/mod.rs:1169:21
[INFO] [stdout]    6:     0x55fd16bebcaf - std::io::Write::write_fmt::hea6336dbf2fa00b8
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/io/mod.rs:1835:15
[INFO] [stdout]    7:     0x55fd16bee19e - std::sys_common::backtrace::_print::h79ca548f3a2adf4b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x55fd16bee19e - std::sys_common::backtrace::print::h9aebf997b2fea2d3
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x55fd16befb09 - std::panicking::default_hook::{{closure}}::h68a0954af2694526
[INFO] [stdout]   10:     0x55fd16bef85c - std::panicking::default_hook::h5be50cc6849ffb00
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:295:9
[INFO] [stdout]   11:     0x55fd16bb6b9f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd874405dcbd1d3ed
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   12:     0x55fd16bb6b9f - test::test_main::{{closure}}::h4f26a9df34a84b94
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x55fd16bf010b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h00e96d9c62aa9a12
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   14:     0x55fd16bf010b - std::panicking::rust_panic_with_hook::h3c0df6036729334c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:799:13
[INFO] [stdout]   15:     0x55fd16befe84 - std::panicking::begin_panic_handler::{{closure}}::ha3a21e93c4cfd807
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:664:13
[INFO] [stdout]   16:     0x55fd16bee889 - std::sys_common::backtrace::__rust_end_short_backtrace::h19508a8f8ae71dc9
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x55fd16befbb7 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:652:5
[INFO] [stdout]   18:     0x55fd16b71883 - core::panicking::panic_fmt::h2ba8af99174d83ea
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x55fd16b71cd6 - core::result::unwrap_failed::h52f3bbb78b59f71d
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/result.rs:1654:5
[INFO] [stdout]   20:     0x55fd16b74bff - core::result::Result<T,E>::expect::h545d7df1c8ea4ece
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/result.rs:1034:23
[INFO] [stdout]   21:     0x55fd16b7d0eb - cache_performance_profiler::write_to_performance_profile::h75b958d4cd1a3f01
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:20:5
[INFO] [stdout]   22:     0x55fd16b7da2e - cache_performance_profiler::profile_cache_kernel::h277d544fedb9e3de
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:82:5
[INFO] [stdout]   23:     0x55fd16b7db20 - cache_performance_profiler::profile_caches::h84b2a767118d9faa
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:90:5
[INFO] [stdout]   24:     0x55fd16b7da87 - cache_performance_profiler::profile_caches::{{closure}}::h79f3a75ef06f424a
[INFO] [stdout]                                at /opt/rustwide/workdir/grammar_parser/tests/cache_performance_profiler.rs:86:20
[INFO] [stdout]   25:     0x55fd16b7bc66 - core::ops::function::FnOnce::call_once::h78dc972f3ae7fb38
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x55fd16bbb4bb - core::ops::function::FnOnce::call_once::h18c6bf92212b87a4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x55fd16bbb4bb - test::__rust_begin_short_backtrace::hdcf0edcfa9080086
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:625:18
[INFO] [stdout]   28:     0x55fd16bbab81 - test::run_test_in_process::{{closure}}::heac2c4eb375d2d10
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:648:60
[INFO] [stdout]   29:     0x55fd16bbab81 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0289bafc8a1cc004
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   30:     0x55fd16bbab81 - std::panicking::try::do_call::h5e158f1ad8a5f983
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:559:40
[INFO] [stdout]   31:     0x55fd16bbab81 - std::panicking::try::hea3411d60321c4de
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:523:19
[INFO] [stdout]   32:     0x55fd16bbab81 - std::panic::catch_unwind::hafb7bb18bc47bbc7
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panic.rs:149:14
[INFO] [stdout]   33:     0x55fd16bbab81 - test::run_test_in_process::h74dd138dc7762d99
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:648:27
[INFO] [stdout]   34:     0x55fd16bbab81 - test::run_test::{{closure}}::h6b390822e63606cf
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:569:43
[INFO] [stdout]   35:     0x55fd16b83554 - test::run_test::{{closure}}::h6e11dba8131d354b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:599:41
[INFO] [stdout]   36:     0x55fd16b83554 - std::sys_common::backtrace::__rust_begin_short_backtrace::ha71b3541b59bdbbb
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   37:     0x55fd16b88022 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hef92127c5ef9e53c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/thread/mod.rs:542:17
[INFO] [stdout]   38:     0x55fd16b88022 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h859c109f9d11c92b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   39:     0x55fd16b88022 - std::panicking::try::do_call::hbf534c458cd858f0
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:559:40
[INFO] [stdout]   40:     0x55fd16b88022 - std::panicking::try::h65c18365a7b9ad90
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:523:19
[INFO] [stdout]   41:     0x55fd16b88022 - std::panic::catch_unwind::h21b25d4c69478c39
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panic.rs:149:14
[INFO] [stdout]   42:     0x55fd16b88022 - std::thread::Builder::spawn_unchecked_::{{closure}}::h23335f620275a9bf
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/thread/mod.rs:541:30
[INFO] [stdout]   43:     0x55fd16b88022 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hb491dc55513e9b7c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x55fd16bf42db - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h41b39260afcffdc9
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   45:     0x55fd16bf42db - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6694c8dc6dd010c4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   46:     0x55fd16bf42db - std::sys::pal::unix::thread::Thread::new::thread_start::hf16038e1c8e19c99
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   47:     0x7f4a0d755ac3 - <unknown>
[INFO] [stdout]   48:     0x7f4a0d7e6a04 - __clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     profile_caches
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p grammar_parser --test cache_performance_profiler`
[INFO] running `Command { std: "docker" "inspect" "28c1d0d0163e790ea173a77638dadfe1b1822db260158e948eadfadfa7d1db0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28c1d0d0163e790ea173a77638dadfe1b1822db260158e948eadfadfa7d1db0d", kill_on_drop: false }`
[INFO] [stdout] 28c1d0d0163e790ea173a77638dadfe1b1822db260158e948eadfadfa7d1db0d
