[INFO] cloning repository https://github.com/AcrylicShrimp/testlang-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AcrylicShrimp/testlang-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Ftestlang-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Ftestlang-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f5807d804a6f061f325bb5185168813e1ea18b3f
[INFO] checking AcrylicShrimp/testlang-rust against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Ftestlang-rust" "/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/AcrylicShrimp/testlang-rust on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/AcrylicShrimp/testlang-rust
[INFO] finished tweaking git repo https://github.com/AcrylicShrimp/testlang-rust
[INFO] tweaked toml for git repo https://github.com/AcrylicShrimp/testlang-rust written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/AcrylicShrimp/testlang-rust 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" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/TheDan64/inkwell`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded llvm-sys v100.1.0
[INFO] [stderr]   Downloaded strum_macros v0.16.0
[INFO] [stderr]   Downloaded parking_lot_core v0.7.0
[INFO] [stderr]   Downloaded once_cell v1.3.1
[INFO] [stderr]   Downloaded parking_lot v0.10.0
[INFO] [stderr]   Downloaded itertools v0.9.0
[INFO] [stderr]   Downloaded serde_json v1.0.45
[INFO] [stderr]   Downloaded strum v0.16.0
[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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 011814963b4d1b0e993a778ca5ccd56eae0a70a3b42c6192b813403a18a21afe
[INFO] running `Command { std: "docker" "start" "-a" "011814963b4d1b0e993a778ca5ccd56eae0a70a3b42c6192b813403a18a21afe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "011814963b4d1b0e993a778ca5ccd56eae0a70a3b42c6192b813403a18a21afe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "011814963b4d1b0e993a778ca5ccd56eae0a70a3b42c6192b813403a18a21afe", kill_on_drop: false }`
[INFO] [stdout] 011814963b4d1b0e993a778ca5ccd56eae0a70a3b42c6192b813403a18a21afe
[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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5ad5e985a216ec0036e60b9434ff4b84081ec39ff8b6293d8a1f1910e9f61f96
[INFO] running `Command { std: "docker" "start" "-a" "5ad5e985a216ec0036e60b9434ff4b84081ec39ff8b6293d8a1f1910e9f61f96", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.3.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.8
[INFO] [stderr]    Compiling syn v1.0.14
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling regex-syntax v0.6.13
[INFO] [stderr]    Compiling cc v1.0.50
[INFO] [stderr]     Checking smallvec v1.1.0
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]    Compiling serde v1.0.104
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking either v1.5.3
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling inkwell v0.1.0 (https://github.com/TheDan64/inkwell?branch=llvm10-0#84b9666c)
[INFO] [stderr]     Checking lock_api v0.3.3
[INFO] [stderr]     Checking itoa v0.4.5
[INFO] [stderr]     Checking once_cell v1.3.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking itertools v0.9.0
[INFO] [stderr]     Checking strum v0.16.0
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]     Checking aho-corasick v0.7.6
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking parking_lot_core v0.7.0
[INFO] [stderr]     Checking num_cpus v1.12.0
[INFO] [stderr]     Checking parking_lot v0.10.0
[INFO] [stderr]     Checking regex v1.3.3
[INFO] [stderr]    Compiling llvm-sys v100.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.104
[INFO] [stderr]    Compiling inkwell_internals v0.2.0 (https://github.com/TheDan64/inkwell?branch=llvm10-0#84b9666c)
[INFO] [stderr]    Compiling strum_macros v0.16.0
[INFO] [stderr]     Checking serde_json v1.0.45
[INFO] [stderr]     Checking testlang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::rule::lexer::Type`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::rule::lexer::Type;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/untyped_ir.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::rule::lexer::Type`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::rule::lexer::Type;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/untyped_ir.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:223:4
[INFO] [stdout]     |
[INFO] [stdout] 223 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:266:4
[INFO] [stdout]     |
[INFO] [stdout] 266 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:274:4
[INFO] [stdout]     |
[INFO] [stdout] 274 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:223:4
[INFO] [stdout]     |
[INFO] [stdout] 223 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:266:4
[INFO] [stdout]     |
[INFO] [stdout] 266 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:274:4
[INFO] [stdout]     |
[INFO] [stdout] 274 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `inkwell::OptimizationLevel`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use inkwell::OptimizationLevel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `inkwell::OptimizationLevel`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use inkwell::OptimizationLevel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_action_table` is never used
[INFO] [stdout]   --> src/main.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn generate_action_table() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `expr_depend_on_ty`, `var_depend_on_ty`, `var_depend_on_var`, and `constraint_ty` are never used
[INFO] [stdout]    --> src/codegen/typed_ir.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl TypeInferContext {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn expr_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn var_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn var_depend_on_var(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn constraint_ty(&mut self, ty: &TypeID, constraint: TypeConstraint) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `from_parent` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:372:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | impl UntypedIRScope {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] 372 |     pub fn new() -> UntypedIRScope {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn from_parent(parent_scope: IRScopeID) -> UntypedIRScope {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `new_scope` is never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl UntypedIRContext {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn new_scope(&mut self, parent_scope: IRScopeID) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `new_scope` and `remove_scope` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:456:12
[INFO] [stdout]     |
[INFO] [stdout] 445 | impl UntypedIRScopeStackContext {
[INFO] [stdout]     | ------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     pub fn new_scope(&mut self, context: &mut UntypedIRContext) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     pub fn remove_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl ActionMap {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 34 |     pub fn new() -> ActionMap {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_action_table` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl Generator {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 45 |     pub fn generate_action_table(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl ARule {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn new(rule_index: usize, lookahead: String) -> ARule {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_state` are never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl StateGraph {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 46 |     pub fn new() -> StateGraph {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn add_state(&mut self, state_handle: StateHandle) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `closure`, `closure_rule`, `goto`, and `generate_dag` are never used
[INFO] [stdout]    --> src/rule/generator/dag.rs:70:5
[INFO] [stdout]     |
[INFO] [stdout] 69  | impl Generator {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 70  |     fn closure(&self, state: &mut State) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn closure_rule(&self, rule: ARule) -> State {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn goto(&self, state: &State, label: &String) -> Option<StateHandle> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn generate_dag(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FirstSet` is never used
[INFO] [stdout]  --> src/rule/generator/first.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub type FirstSet = HashMap<String, HashSet<String>>;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate_first` and `update_set` are never used
[INFO] [stdout]   --> src/rule/generator/first.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Generator {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn generate_first(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn update_set(first_set: &mut FirstSet, rule_name: &String, rule_item: &RuleItem) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Generator` is never constructed
[INFO] [stdout]  --> src/rule/generator/generator.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Generator {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/generator.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Generator {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 14 |     pub fn new(rule_table: RuleTable) -> Generator {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `EoF`, `Unknown`, `Colon`, `Semicolon`, `Id`, and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/lexer.rs:5:2
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Type {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 5  |     EoF,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 6  |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 7  |     Colon,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 8  |     Semicolon,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Type` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `index`, and `max_index` are never read
[INFO] [stdout]   --> src/rule/lexer.rs:21:2
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Lexer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     content: Vec<char>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     index: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     max_index: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Lexer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next`, `next_blackspace`, `is_punctuation`, and `is_eof` are never used
[INFO] [stdout]    --> src/rule/lexer.rs:27:9
[INFO] [stdout]     |
[INFO] [stdout] 26  | impl Lexer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 27  |     pub fn new(content: String) -> Lexer {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38  |     pub fn next(&mut self) -> Token {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn next_blackspace(&mut self) -> char {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn is_punctuation(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn is_eof(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Id` and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/parser.rs:9:2
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum RuleItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RuleItemType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialRule` is never constructed
[INFO] [stdout]   --> src/rule/parser.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct PartialRule {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `first_item` is never used
[INFO] [stdout]   --> src/rule/parser.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Rule {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 32 |     pub fn first_item(&self) -> Option<&RuleItem> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_rule` are never used
[INFO] [stdout]   --> src/rule/parser.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl RuleTable {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |     pub fn new() -> RuleTable {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn add_rule(&mut self, partial_rule: PartialRule) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lexer` is never read
[INFO] [stdout]   --> src/rule/parser.rs:71:2
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct Parser {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 71 |     lexer: Lexer,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parser` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, and `next` are never used
[INFO] [stdout]   --> src/rule/parser.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl Parser {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 75 |     pub fn new(content: String) -> Parser {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn parse(&mut self) -> RuleTable {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     fn next(&mut self) -> Option<PartialRule> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 33 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_action_table` is never used
[INFO] [stdout]   --> src/main.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn generate_action_table() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `expr_depend_on_ty`, `var_depend_on_ty`, `var_depend_on_var`, and `constraint_ty` are never used
[INFO] [stdout]    --> src/codegen/typed_ir.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl TypeInferContext {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn expr_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn var_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn var_depend_on_var(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn constraint_ty(&mut self, ty: &TypeID, constraint: TypeConstraint) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `from_parent` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:372:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | impl UntypedIRScope {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] 372 |     pub fn new() -> UntypedIRScope {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn from_parent(parent_scope: IRScopeID) -> UntypedIRScope {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `new_scope` is never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl UntypedIRContext {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn new_scope(&mut self, parent_scope: IRScopeID) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `new_scope` and `remove_scope` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:456:12
[INFO] [stdout]     |
[INFO] [stdout] 445 | impl UntypedIRScopeStackContext {
[INFO] [stdout]     | ------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     pub fn new_scope(&mut self, context: &mut UntypedIRContext) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     pub fn remove_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl ActionMap {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 34 |     pub fn new() -> ActionMap {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_action_table` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl Generator {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 45 |     pub fn generate_action_table(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl ARule {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn new(rule_index: usize, lookahead: String) -> ARule {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_state` are never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl StateGraph {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 46 |     pub fn new() -> StateGraph {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn add_state(&mut self, state_handle: StateHandle) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `closure`, `closure_rule`, `goto`, and `generate_dag` are never used
[INFO] [stdout]    --> src/rule/generator/dag.rs:70:5
[INFO] [stdout]     |
[INFO] [stdout] 69  | impl Generator {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 70  |     fn closure(&self, state: &mut State) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn closure_rule(&self, rule: ARule) -> State {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn goto(&self, state: &State, label: &String) -> Option<StateHandle> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn generate_dag(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FirstSet` is never used
[INFO] [stdout]  --> src/rule/generator/first.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub type FirstSet = HashMap<String, HashSet<String>>;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate_first` and `update_set` are never used
[INFO] [stdout]   --> src/rule/generator/first.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Generator {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn generate_first(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn update_set(first_set: &mut FirstSet, rule_name: &String, rule_item: &RuleItem) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Generator` is never constructed
[INFO] [stdout]  --> src/rule/generator/generator.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Generator {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/generator.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Generator {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 14 |     pub fn new(rule_table: RuleTable) -> Generator {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `EoF`, `Unknown`, `Colon`, `Semicolon`, `Id`, and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/lexer.rs:5:2
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Type {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 5  |     EoF,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 6  |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 7  |     Colon,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 8  |     Semicolon,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Type` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `index`, and `max_index` are never read
[INFO] [stdout]   --> src/rule/lexer.rs:21:2
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Lexer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     content: Vec<char>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     index: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     max_index: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Lexer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next`, `next_blackspace`, `is_punctuation`, and `is_eof` are never used
[INFO] [stdout]    --> src/rule/lexer.rs:27:9
[INFO] [stdout]     |
[INFO] [stdout] 26  | impl Lexer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 27  |     pub fn new(content: String) -> Lexer {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38  |     pub fn next(&mut self) -> Token {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn next_blackspace(&mut self) -> char {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn is_punctuation(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn is_eof(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Id` and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/parser.rs:9:2
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum RuleItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RuleItemType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialRule` is never constructed
[INFO] [stdout]   --> src/rule/parser.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct PartialRule {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `first_item` is never used
[INFO] [stdout]   --> src/rule/parser.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Rule {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 32 |     pub fn first_item(&self) -> Option<&RuleItem> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_rule` are never used
[INFO] [stdout]   --> src/rule/parser.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl RuleTable {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |     pub fn new() -> RuleTable {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn add_rule(&mut self, partial_rule: PartialRule) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lexer` is never read
[INFO] [stdout]   --> src/rule/parser.rs:71:2
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct Parser {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 71 |     lexer: Lexer,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parser` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, and `next` are never used
[INFO] [stdout]   --> src/rule/parser.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl Parser {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 75 |     pub fn new(content: String) -> Parser {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn parse(&mut self) -> RuleTable {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     fn next(&mut self) -> Option<PartialRule> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 33 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 8.80s
[INFO] running `Command { std: "docker" "inspect" "5ad5e985a216ec0036e60b9434ff4b84081ec39ff8b6293d8a1f1910e9f61f96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ad5e985a216ec0036e60b9434ff4b84081ec39ff8b6293d8a1f1910e9f61f96", kill_on_drop: false }`
[INFO] [stdout] 5ad5e985a216ec0036e60b9434ff4b84081ec39ff8b6293d8a1f1910e9f61f96
[INFO] checking AcrylicShrimp/testlang-rust against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Ftestlang-rust" "/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/AcrylicShrimp/testlang-rust on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/AcrylicShrimp/testlang-rust
[INFO] finished tweaking git repo https://github.com/AcrylicShrimp/testlang-rust
[INFO] tweaked toml for git repo https://github.com/AcrylicShrimp/testlang-rust written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/AcrylicShrimp/testlang-rust 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" "+7622c0f807a4e13c4db886a1681bf343795692df" "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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7bf780c020fdef4f1f6d4a187592b0e3590e9cda3674d73b9a2847c3a53a3e80
[INFO] running `Command { std: "docker" "start" "-a" "7bf780c020fdef4f1f6d4a187592b0e3590e9cda3674d73b9a2847c3a53a3e80", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7bf780c020fdef4f1f6d4a187592b0e3590e9cda3674d73b9a2847c3a53a3e80", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7bf780c020fdef4f1f6d4a187592b0e3590e9cda3674d73b9a2847c3a53a3e80", kill_on_drop: false }`
[INFO] [stdout] 7bf780c020fdef4f1f6d4a187592b0e3590e9cda3674d73b9a2847c3a53a3e80
[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 -Dnon_local_definitions" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] be96b57cb40e69262a45edad81ff66e67bbfb57c8a4219f71f865a529740d0c6
[INFO] running `Command { std: "docker" "start" "-a" "be96b57cb40e69262a45edad81ff66e67bbfb57c8a4219f71f865a529740d0c6", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.3.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.8
[INFO] [stderr]    Compiling syn v1.0.14
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]    Compiling regex-syntax v0.6.13
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling cc v1.0.50
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]     Checking smallvec v1.1.0
[INFO] [stderr]    Compiling serde v1.0.104
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]    Compiling inkwell v0.1.0 (https://github.com/TheDan64/inkwell?branch=llvm10-0#84b9666c)
[INFO] [stderr]     Checking either v1.5.3
[INFO] [stderr]     Checking lock_api v0.3.3
[INFO] [stderr]     Checking once_cell v1.3.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking itoa v0.4.5
[INFO] [stderr]     Checking itertools v0.9.0
[INFO] [stderr]     Checking strum v0.16.0
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]     Checking aho-corasick v0.7.6
[INFO] [stderr]     Checking parking_lot_core v0.7.0
[INFO] [stderr]     Checking num_cpus v1.12.0
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking parking_lot v0.10.0
[INFO] [stderr]    Compiling regex v1.3.3
[INFO] [stderr]    Compiling llvm-sys v100.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.104
[INFO] [stderr]    Compiling inkwell_internals v0.2.0 (https://github.com/TheDan64/inkwell?branch=llvm10-0#84b9666c)
[INFO] [stderr]    Compiling strum_macros v0.16.0
[INFO] [stderr]     Checking serde_json v1.0.45
[INFO] [stderr]     Checking testlang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::rule::lexer::Type`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::rule::lexer::Type;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/untyped_ir.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:223:4
[INFO] [stdout]     |
[INFO] [stdout] 223 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:266:4
[INFO] [stdout]     |
[INFO] [stdout] 266 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:274:4
[INFO] [stdout]     |
[INFO] [stdout] 274 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::rule::lexer::Type`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::rule::lexer::Type;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/typed_ir.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env::var`
[INFO] [stdout]  --> src/codegen/untyped_ir.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::env::var;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `inkwell::OptimizationLevel`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use inkwell::OptimizationLevel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:223:4
[INFO] [stdout]     |
[INFO] [stdout] 223 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:266:4
[INFO] [stdout]     |
[INFO] [stdout] 266 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/lexer.rs:274:4
[INFO] [stdout]     |
[INFO] [stdout] 274 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `inkwell::OptimizationLevel`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use inkwell::OptimizationLevel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_action_table` is never used
[INFO] [stdout]   --> src/main.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn generate_action_table() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `expr_depend_on_ty`, `var_depend_on_ty`, `var_depend_on_var`, and `constraint_ty` are never used
[INFO] [stdout]    --> src/codegen/typed_ir.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl TypeInferContext {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn expr_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn var_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn var_depend_on_var(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn constraint_ty(&mut self, ty: &TypeID, constraint: TypeConstraint) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `from_parent` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:372:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | impl UntypedIRScope {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] 372 |     pub fn new() -> UntypedIRScope {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn from_parent(parent_scope: IRScopeID) -> UntypedIRScope {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `new_scope` is never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl UntypedIRContext {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn new_scope(&mut self, parent_scope: IRScopeID) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `new_scope` and `remove_scope` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:456:12
[INFO] [stdout]     |
[INFO] [stdout] 445 | impl UntypedIRScopeStackContext {
[INFO] [stdout]     | ------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     pub fn new_scope(&mut self, context: &mut UntypedIRContext) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     pub fn remove_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl ActionMap {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 34 |     pub fn new() -> ActionMap {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_action_table` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl Generator {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 45 |     pub fn generate_action_table(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl ARule {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn new(rule_index: usize, lookahead: String) -> ARule {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_state` are never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl StateGraph {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 46 |     pub fn new() -> StateGraph {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn add_state(&mut self, state_handle: StateHandle) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `closure`, `closure_rule`, `goto`, and `generate_dag` are never used
[INFO] [stdout]    --> src/rule/generator/dag.rs:70:5
[INFO] [stdout]     |
[INFO] [stdout] 69  | impl Generator {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 70  |     fn closure(&self, state: &mut State) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn closure_rule(&self, rule: ARule) -> State {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn goto(&self, state: &State, label: &String) -> Option<StateHandle> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn generate_dag(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FirstSet` is never used
[INFO] [stdout]  --> src/rule/generator/first.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub type FirstSet = HashMap<String, HashSet<String>>;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate_first` and `update_set` are never used
[INFO] [stdout]   --> src/rule/generator/first.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Generator {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn generate_first(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn update_set(first_set: &mut FirstSet, rule_name: &String, rule_item: &RuleItem) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Generator` is never constructed
[INFO] [stdout]  --> src/rule/generator/generator.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Generator {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/generator.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Generator {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 14 |     pub fn new(rule_table: RuleTable) -> Generator {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `EoF`, `Unknown`, `Colon`, `Semicolon`, `Id`, and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/lexer.rs:5:2
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Type {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 5  |     EoF,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 6  |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 7  |     Colon,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 8  |     Semicolon,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Type` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `index`, and `max_index` are never read
[INFO] [stdout]   --> src/rule/lexer.rs:21:2
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Lexer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     content: Vec<char>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     index: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     max_index: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Lexer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next`, `next_blackspace`, `is_punctuation`, and `is_eof` are never used
[INFO] [stdout]    --> src/rule/lexer.rs:27:9
[INFO] [stdout]     |
[INFO] [stdout] 26  | impl Lexer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 27  |     pub fn new(content: String) -> Lexer {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38  |     pub fn next(&mut self) -> Token {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn next_blackspace(&mut self) -> char {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn is_punctuation(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn is_eof(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Id` and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/parser.rs:9:2
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum RuleItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RuleItemType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialRule` is never constructed
[INFO] [stdout]   --> src/rule/parser.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct PartialRule {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `first_item` is never used
[INFO] [stdout]   --> src/rule/parser.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Rule {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 32 |     pub fn first_item(&self) -> Option<&RuleItem> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_rule` are never used
[INFO] [stdout]   --> src/rule/parser.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl RuleTable {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |     pub fn new() -> RuleTable {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn add_rule(&mut self, partial_rule: PartialRule) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lexer` is never read
[INFO] [stdout]   --> src/rule/parser.rs:71:2
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct Parser {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 71 |     lexer: Lexer,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parser` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, and `next` are never used
[INFO] [stdout]   --> src/rule/parser.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl Parser {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 75 |     pub fn new(content: String) -> Parser {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn parse(&mut self) -> RuleTable {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     fn next(&mut self) -> Option<PartialRule> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/main.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ActionTableWrapper`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/main.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_ActionTableWrapper`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ActionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_ActionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Action`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Action`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ActionMap`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_ActionMap`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors; 33 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_action_table` is never used
[INFO] [stdout]   --> src/main.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn generate_action_table() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `expr_depend_on_ty`, `var_depend_on_ty`, `var_depend_on_var`, and `constraint_ty` are never used
[INFO] [stdout]    --> src/codegen/typed_ir.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl TypeInferContext {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn expr_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn var_depend_on_ty(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn var_depend_on_var(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn constraint_ty(&mut self, ty: &TypeID, constraint: TypeConstraint) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `from_parent` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:372:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | impl UntypedIRScope {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] 372 |     pub fn new() -> UntypedIRScope {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn from_parent(parent_scope: IRScopeID) -> UntypedIRScope {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `new_scope` is never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl UntypedIRContext {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn new_scope(&mut self, parent_scope: IRScopeID) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `new_scope` and `remove_scope` are never used
[INFO] [stdout]    --> src/codegen/untyped_ir.rs:456:12
[INFO] [stdout]     |
[INFO] [stdout] 445 | impl UntypedIRScopeStackContext {
[INFO] [stdout]     | ------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     pub fn new_scope(&mut self, context: &mut UntypedIRContext) -> IRScopeID {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     pub fn remove_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl ActionMap {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 34 |     pub fn new() -> ActionMap {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_action_table` is never used
[INFO] [stdout]   --> src/rule/generator/action_table.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl Generator {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 45 |     pub fn generate_action_table(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl ARule {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn new(rule_index: usize, lookahead: String) -> ARule {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_state` are never used
[INFO] [stdout]   --> src/rule/generator/dag.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl StateGraph {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 46 |     pub fn new() -> StateGraph {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn add_state(&mut self, state_handle: StateHandle) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `closure`, `closure_rule`, `goto`, and `generate_dag` are never used
[INFO] [stdout]    --> src/rule/generator/dag.rs:70:5
[INFO] [stdout]     |
[INFO] [stdout] 69  | impl Generator {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 70  |     fn closure(&self, state: &mut State) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn closure_rule(&self, rule: ARule) -> State {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn goto(&self, state: &State, label: &String) -> Option<StateHandle> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn generate_dag(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FirstSet` is never used
[INFO] [stdout]  --> src/rule/generator/first.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub type FirstSet = HashMap<String, HashSet<String>>;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate_first` and `update_set` are never used
[INFO] [stdout]   --> src/rule/generator/first.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Generator {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn generate_first(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn update_set(first_set: &mut FirstSet, rule_name: &String, rule_item: &RuleItem) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Generator` is never constructed
[INFO] [stdout]  --> src/rule/generator/generator.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Generator {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/rule/generator/generator.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Generator {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 14 |     pub fn new(rule_table: RuleTable) -> Generator {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `EoF`, `Unknown`, `Colon`, `Semicolon`, `Id`, and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/lexer.rs:5:2
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum Type {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 5  |     EoF,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 6  |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 7  |     Colon,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 8  |     Semicolon,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Type` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `index`, and `max_index` are never read
[INFO] [stdout]   --> src/rule/lexer.rs:21:2
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Lexer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     content: Vec<char>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     index: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     max_index: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Lexer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next`, `next_blackspace`, `is_punctuation`, and `is_eof` are never used
[INFO] [stdout]    --> src/rule/lexer.rs:27:9
[INFO] [stdout]     |
[INFO] [stdout] 26  | impl Lexer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 27  |     pub fn new(content: String) -> Lexer {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38  |     pub fn next(&mut self) -> Token {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn next_blackspace(&mut self) -> char {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn is_punctuation(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn is_eof(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Id` and `Literal` are never constructed
[INFO] [stdout]   --> src/rule/parser.rs:9:2
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum RuleItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 9  |     Id,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     Literal,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RuleItemType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialRule` is never constructed
[INFO] [stdout]   --> src/rule/parser.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct PartialRule {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `first_item` is never used
[INFO] [stdout]   --> src/rule/parser.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Rule {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] 32 |     pub fn first_item(&self) -> Option<&RuleItem> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_rule` are never used
[INFO] [stdout]   --> src/rule/parser.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl RuleTable {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |     pub fn new() -> RuleTable {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn add_rule(&mut self, partial_rule: PartialRule) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lexer` is never read
[INFO] [stdout]   --> src/rule/parser.rs:71:2
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct Parser {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 71 |     lexer: Lexer,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parser` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, and `next` are never used
[INFO] [stdout]   --> src/rule/parser.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl Parser {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 75 |     pub fn new(content: String) -> Parser {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn parse(&mut self) -> RuleTable {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     fn next(&mut self) -> Option<PartialRule> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/main.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ActionTableWrapper`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/main.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_ActionTableWrapper`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `testlang` (bin "testlang" test) due to 9 previous errors; 33 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ActionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_ActionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Action`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, PartialEq)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Action`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ActionMap`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/rule/generator/action_table.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_ActionMap`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors; 33 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `testlang` (bin "testlang") due to 9 previous errors; 33 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "be96b57cb40e69262a45edad81ff66e67bbfb57c8a4219f71f865a529740d0c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be96b57cb40e69262a45edad81ff66e67bbfb57c8a4219f71f865a529740d0c6", kill_on_drop: false }`
[INFO] [stdout] be96b57cb40e69262a45edad81ff66e67bbfb57c8a4219f71f865a529740d0c6
