[INFO] cloning repository https://github.com/msdlisper/z-lang
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/msdlisper/z-lang" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmsdlisper%2Fz-lang", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmsdlisper%2Fz-lang'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b16b5f53a93a233043ad8cf89ab252f60147de54
[INFO] building msdlisper/z-lang against master#ad211ced81509462cdfe4c29ed10f97279a0acae for pr-135216
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmsdlisper%2Fz-lang" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/msdlisper/z-lang on toolchain ad211ced81509462cdfe4c29ed10f97279a0acae
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/msdlisper/z-lang
[INFO] finished tweaking git repo https://github.com/msdlisper/z-lang
[INFO] tweaked toml for git repo https://github.com/msdlisper/z-lang written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/msdlisper/z-lang 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" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded m_lexer v0.0.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 690f8876a6ec986a916c474b8e436354b535d1951e4ee01a7a973a216a2e5c89
[INFO] running `Command { std: "docker" "start" "-a" "690f8876a6ec986a916c474b8e436354b535d1951e4ee01a7a973a216a2e5c89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "690f8876a6ec986a916c474b8e436354b535d1951e4ee01a7a973a216a2e5c89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "690f8876a6ec986a916c474b8e436354b535d1951e4ee01a7a973a216a2e5c89", kill_on_drop: false }`
[INFO] [stdout] 690f8876a6ec986a916c474b8e436354b535d1951e4ee01a7a973a216a2e5c89
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e3b75c4db0d2370eaca8e5f84129c0928983536e4848ea114f02370531116c96
[INFO] running `Command { std: "docker" "start" "-a" "e3b75c4db0d2370eaca8e5f84129c0928983536e4848ea114f02370531116c96", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling ucd-trie v0.1.6
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling countme v3.0.1
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling text-size v1.1.1
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling rowan v0.15.15
[INFO] [stderr]    Compiling syn v2.0.68
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling pest v2.7.11
[INFO] [stderr]    Compiling regex v1.10.5
[INFO] [stderr]    Compiling m_lexer v0.0.4
[INFO] [stderr]    Compiling pest_meta v2.7.11
[INFO] [stderr]    Compiling pest_generator v2.7.11
[INFO] [stderr]    Compiling pest_derive v2.7.11
[INFO] [stderr]    Compiling z-lang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `pest::Parser`
[INFO] [stdout]  --> src/pest/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pest::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pest_derive::Parser`
[INFO] [stdout]  --> src/pest/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pest_derive::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `implied_bounds_entailment` has been removed: converted into hard error, see PR #117984 <https://github.com/rust-lang/rust/pull/117984> for more information
[INFO] [stdout]  --> src/pest/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[allow(implied_bounds_entailment)]
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `self`
[INFO] [stdout]  --> src/pest/parse_ast.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{self, BufRead};
[INFO] [stdout]   |               ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::frame::ValType`
[INFO] [stdout]  --> src/pest/parse_ast.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::frame::ValType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/pest/parse_ast/tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/pest/parse_ast.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 446 |     if (inner_len == 3) {
[INFO] [stdout]     |        ^              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 446 -     if (inner_len == 3) {
[INFO] [stdout] 446 +     if inner_len == 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/pest/slick_script.rs:294:21
[INFO] [stdout]     |
[INFO] [stdout] 294 | /                     /**
[INFO] [stdout] 295 | |                      * TODO
[INFO] [stdout] 296 | |                      * 这里的实现, 需要入参表达式在新的作用域里执行
[INFO] [stdout] 297 | |                      */
[INFO] [stdout]     | |_______________________^
[INFO] [stdout] 298 |                       //  将入参在新的作用域声明(补充block的Declaration节点)
[INFO] [stdout] 299 |                       let need_insert_declare = argu_list.len() > 0;
[INFO] [stdout]     |                       ---------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `/* */` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/pest/parse_ast.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |         r => {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pest/parse_ast.rs:495:12
[INFO] [stdout]     |
[INFO] [stdout] 495 |         Ok(mut pairs) => {
[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: `other`
[INFO] [stdout]   --> src/pest/frame.rs:81:27
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn partial_cmp(&self, other: &Self) -> Option<std::cmp::Ordering> {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scope`
[INFO] [stdout]   --> src/pest/slick_script.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 scope,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `scope: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/pest/slick_script.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 block,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `block: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/pest/slick_script.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 |         _ => {
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/pest/slick_script.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 71  |         AstNodeType::Statement { child } => {
[INFO] [stdout]     |         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 77  |         AstNodeType::IntLiteral(val) => {
[INFO] [stdout]     |         ---------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 81  |         AstNodeType::AdditiveExp { child } => {
[INFO] [stdout]     |         ---------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 107 |         AstNodeType::MulitiExp { child } => {
[INFO] [stdout]     |         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 386 |         _ => {
[INFO] [stdout]     |         ^ ...and 9 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]   --> src/pest/slick_script.rs:91:25
[INFO] [stdout]    |
[INFO] [stdout] 91 |                         args,
[INFO] [stdout]    |                         ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/pest/slick_script.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |                         args,
[INFO] [stdout]     |                         ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `declare_type`
[INFO] [stdout]    --> src/pest/slick_script.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |             declare_type,
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: try ignoring the field: `declare_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_contains` is never read
[INFO] [stdout]    --> src/pest/slick_script.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |             let mut is_contains = false;
[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: `name`
[INFO] [stdout]    --> src/pest/slick_script.rs:280:21
[INFO] [stdout]     |
[INFO] [stdout] 280 |                     name,
[INFO] [stdout]     |                     ^^^^ help: try ignoring the field: `name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type`
[INFO] [stdout]    --> src/pest/slick_script.rs:370:13
[INFO] [stdout]     |
[INFO] [stdout] 370 |             return_type,
[INFO] [stdout]     |             ^^^^^^^^^^^ help: try ignoring the field: `return_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pest/slick_script.rs:338:37
[INFO] [stdout]     |
[INFO] [stdout] 338 | ...                   let mut inner_stats = statements.as_mut().unwrap();
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CalculatorParser` is never constructed
[INFO] [stdout]   --> src/pest/parse_ast.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct CalculatorParser;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Int`, `String`, and `FnType` are never constructed
[INFO] [stdout]   --> src/pest/parse_ast.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum DeclareType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 42 |     Int,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 43 |     String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 44 |     FnType {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeclareType` 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: multiple variants are never constructed
[INFO] [stdout]    --> src/pest/parse_ast.rs:53:5
[INFO] [stdout]     |
[INFO] [stdout] 52  | pub enum AstNodeType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 53  |     Statement {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56  |     IntLiteral(i32),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 57  |     AdditiveExp {
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     MulitiExp {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65  |     JudgeExp {
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71  |     IfStatement {
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77  |     Block {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80  |     Identifier {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83  |     AssignmentStatement {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90  |     FnDeclaration {
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     FnCall {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     Declaration {
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     ReturnExp {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AstNodeType` 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: function `parse_add` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn parse_add(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_atom` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:144:4
[INFO] [stdout]     |
[INFO] [stdout] 144 | fn parse_atom(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_mul` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn parse_mul(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_simple` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn parse_simple(pairs: Pairs<Rule>) -> Vec<AstNodeType> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:198:4
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn parse(pair: Pair<Rule>) -> Option<AstNodeType> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type_or_void` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:286:4
[INFO] [stdout]     |
[INFO] [stdout] 286 | fn parse_type_or_void(pair: Pair<Rule>) -> Option<Box<DeclareType>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_fn_decare` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:301:4
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn parse_fn_decare(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_fn_call` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:327:4
[INFO] [stdout]     |
[INFO] [stdout] 327 | fn parse_fn_call(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:343:4
[INFO] [stdout]     |
[INFO] [stdout] 343 | fn parse_type(pair: Pair<Rule>) -> Option<DeclareType> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_stat` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:381:4
[INFO] [stdout]     |
[INFO] [stdout] 381 | fn parse_stat(childs: Pairs<Rule>) -> Vec<AstNodeType> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_judge` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:396:4
[INFO] [stdout]     |
[INFO] [stdout] 396 | fn parse_judge(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_block` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:409:4
[INFO] [stdout]     |
[INFO] [stdout] 409 | fn parse_block(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_if` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:439:4
[INFO] [stdout]     |
[INFO] [stdout] 439 | fn parse_if(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_code` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:466:8
[INFO] [stdout]     |
[INFO] [stdout] 466 | pub fn parse_code(code: String) -> Vec<AstNodeType> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_file` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:485:8
[INFO] [stdout]     |
[INFO] [stdout] 485 | pub fn parse_file() -> Vec<AstNodeType> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `String`, `Number`, `Boolean`, and `Closure` are never constructed
[INFO] [stdout]   --> src/pest/frame.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ValType {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 15 |     String(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     Number(i32),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 17 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     Closure {
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValType` 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 `Frame` is never constructed
[INFO] [stdout]   --> src/pest/frame.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct Frame {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Frame` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `contains_key`, `get`, `set`, `create_scope`, and `drop_scope` are never used
[INFO] [stdout]    --> src/pest/frame.rs:94:12
[INFO] [stdout]     |
[INFO] [stdout] 93  | impl Frame {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 94  |     pub fn contains_key(&self, q: &String) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub fn get(&self, q: &String) -> Option<Rc<ValType>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn set(&mut self, q: String, val: Rc<ValType>, is_declare: bool) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn create_scope(&mut self, new_scope: Rc<RefCell<Scope>>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn drop_scope(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Closure` and `Block` are never constructed
[INFO] [stdout]    --> src/pest/frame.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub enum Scope {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] 135 |     Closure(ScopeStruct),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 136 |     Block(ScopeStruct),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Scope` 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 `play_object` and `parent_scope` are never read
[INFO] [stdout]    --> src/pest/frame.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub struct ScopeStruct {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 144 |     pub play_object: HashMap<String, Rc<ValType>>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 145 |     pub parent_scope: Option<Rc<RefCell<Scope>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScopeStruct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `contains_key`, `get_parent_scope`, `set`, and `set_parent` are never used
[INFO] [stdout]    --> src/pest/frame.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 149 |     fn get(&self, q: &String) -> Option<Rc<ValType>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     fn contains_key(&self, q: &String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn get_parent_scope(&self) -> Option<Rc<RefCell<Scope>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     fn set(&mut self, q: String, val: Rc<ValType>, is_declare: bool) -> bool {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn set_parent(&mut self, parent: Rc<RefCell<Scope>>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `get_parent_scope`, `set`, `contains_key`, and `set_parent` are never used
[INFO] [stdout]    --> src/pest/frame.rs:191:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl ScopeStruct {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 191 |     fn new(parent_scope: Option<Rc<RefCell<Scope>>>) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn get(&self, q: &String) -> Option<Rc<ValType>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     fn get_parent_scope(&self) -> Option<Rc<RefCell<Scope>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     fn set(&mut self, q: String, val: Rc<ValType>, is_declare: bool) -> bool {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     fn contains_key(&self, q: &String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 259 |     fn set_parent(&mut self, parent: Rc<RefCell<Scope>>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/pest/slick_script.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn main() {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_entry` is never used
[INFO] [stdout]   --> src/pest/slick_script.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn test_entry(code: String) -> ValType {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eval` is never used
[INFO] [stdout]   --> src/pest/slick_script.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn eval(ast: AstNodeType, frame: Rc<RefCell<Frame>>) -> Result<Rc<ValType>, SimpleError> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SimpleError` is never used
[INFO] [stdout]  --> src/util.rs:2:10
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum SimpleError {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `SimpleError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.77s
[INFO] running `Command { std: "docker" "inspect" "e3b75c4db0d2370eaca8e5f84129c0928983536e4848ea114f02370531116c96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e3b75c4db0d2370eaca8e5f84129c0928983536e4848ea114f02370531116c96", kill_on_drop: false }`
[INFO] [stdout] e3b75c4db0d2370eaca8e5f84129c0928983536e4848ea114f02370531116c96
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1266f577e9b4b362fe3fac507a82148b31cde02d4856aa424e5e94e2a99311ac
[INFO] running `Command { std: "docker" "start" "-a" "1266f577e9b4b362fe3fac507a82148b31cde02d4856aa424e5e94e2a99311ac", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `pest::Parser`
[INFO] [stdout]  --> src/pest/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pest::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pest_derive::Parser`
[INFO] [stdout]  --> src/pest/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pest_derive::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `implied_bounds_entailment` has been removed: converted into hard error, see PR #117984 <https://github.com/rust-lang/rust/pull/117984> for more information
[INFO] [stdout]  --> src/pest/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[allow(implied_bounds_entailment)]
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `self`
[INFO] [stdout]  --> src/pest/parse_ast.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{self, BufRead};
[INFO] [stdout]   |               ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::frame::ValType`
[INFO] [stdout]  --> src/pest/parse_ast.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::frame::ValType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/pest/parse_ast/tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/pest/parse_ast.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 446 |     if (inner_len == 3) {
[INFO] [stdout]     |        ^              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 446 -     if (inner_len == 3) {
[INFO] [stdout] 446 +     if inner_len == 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/pest/slick_script.rs:294:21
[INFO] [stdout]     |
[INFO] [stdout] 294 | /                     /**
[INFO] [stdout] 295 | |                      * TODO
[INFO] [stdout] 296 | |                      * 这里的实现, 需要入参表达式在新的作用域里执行
[INFO] [stdout] 297 | |                      */
[INFO] [stdout]     | |_______________________^
[INFO] [stdout] 298 |                       //  将入参在新的作用域声明(补充block的Declaration节点)
[INFO] [stdout] 299 |                       let need_insert_declare = argu_list.len() > 0;
[INFO] [stdout]     |                       ---------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `/* */` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/pest/parse_ast.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |         r => {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pest/parse_ast.rs:495:12
[INFO] [stdout]     |
[INFO] [stdout] 495 |         Ok(mut pairs) => {
[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: `other`
[INFO] [stdout]   --> src/pest/frame.rs:81:27
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn partial_cmp(&self, other: &Self) -> Option<std::cmp::Ordering> {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scope`
[INFO] [stdout]   --> src/pest/slick_script.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 scope,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `scope: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/pest/slick_script.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 block,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `block: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/pest/slick_script.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 |         _ => {
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/pest/slick_script.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 71  |         AstNodeType::Statement { child } => {
[INFO] [stdout]     |         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 77  |         AstNodeType::IntLiteral(val) => {
[INFO] [stdout]     |         ---------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 81  |         AstNodeType::AdditiveExp { child } => {
[INFO] [stdout]     |         ---------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 107 |         AstNodeType::MulitiExp { child } => {
[INFO] [stdout]     |         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 386 |         _ => {
[INFO] [stdout]     |         ^ ...and 9 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]   --> src/pest/slick_script.rs:91:25
[INFO] [stdout]    |
[INFO] [stdout] 91 |                         args,
[INFO] [stdout]    |                         ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/pest/slick_script.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |                         args,
[INFO] [stdout]     |                         ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `declare_type`
[INFO] [stdout]    --> src/pest/slick_script.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |             declare_type,
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: try ignoring the field: `declare_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_contains` is never read
[INFO] [stdout]    --> src/pest/slick_script.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |             let mut is_contains = false;
[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: `name`
[INFO] [stdout]    --> src/pest/slick_script.rs:280:21
[INFO] [stdout]     |
[INFO] [stdout] 280 |                     name,
[INFO] [stdout]     |                     ^^^^ help: try ignoring the field: `name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type`
[INFO] [stdout]    --> src/pest/slick_script.rs:370:13
[INFO] [stdout]     |
[INFO] [stdout] 370 |             return_type,
[INFO] [stdout]     |             ^^^^^^^^^^^ help: try ignoring the field: `return_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pest/slick_script.rs:338:37
[INFO] [stdout]     |
[INFO] [stdout] 338 | ...                   let mut inner_stats = statements.as_mut().unwrap();
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CalculatorParser` is never constructed
[INFO] [stdout]   --> src/pest/parse_ast.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct CalculatorParser;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Int`, `String`, and `FnType` are never constructed
[INFO] [stdout]   --> src/pest/parse_ast.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum DeclareType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 42 |     Int,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 43 |     String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 44 |     FnType {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeclareType` 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: multiple variants are never constructed
[INFO] [stdout]    --> src/pest/parse_ast.rs:53:5
[INFO] [stdout]     |
[INFO] [stdout] 52  | pub enum AstNodeType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 53  |     Statement {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56  |     IntLiteral(i32),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 57  |     AdditiveExp {
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     MulitiExp {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65  |     JudgeExp {
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71  |     IfStatement {
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77  |     Block {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80  |     Identifier {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83  |     AssignmentStatement {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90  |     FnDeclaration {
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     FnCall {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     Declaration {
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     ReturnExp {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AstNodeType` 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: function `parse_add` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn parse_add(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_atom` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:144:4
[INFO] [stdout]     |
[INFO] [stdout] 144 | fn parse_atom(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_mul` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn parse_mul(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_simple` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn parse_simple(pairs: Pairs<Rule>) -> Vec<AstNodeType> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:198:4
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn parse(pair: Pair<Rule>) -> Option<AstNodeType> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type_or_void` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:286:4
[INFO] [stdout]     |
[INFO] [stdout] 286 | fn parse_type_or_void(pair: Pair<Rule>) -> Option<Box<DeclareType>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_fn_decare` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:301:4
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn parse_fn_decare(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_fn_call` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:327:4
[INFO] [stdout]     |
[INFO] [stdout] 327 | fn parse_fn_call(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:343:4
[INFO] [stdout]     |
[INFO] [stdout] 343 | fn parse_type(pair: Pair<Rule>) -> Option<DeclareType> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_stat` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:381:4
[INFO] [stdout]     |
[INFO] [stdout] 381 | fn parse_stat(childs: Pairs<Rule>) -> Vec<AstNodeType> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_judge` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:396:4
[INFO] [stdout]     |
[INFO] [stdout] 396 | fn parse_judge(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_block` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:409:4
[INFO] [stdout]     |
[INFO] [stdout] 409 | fn parse_block(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_if` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:439:4
[INFO] [stdout]     |
[INFO] [stdout] 439 | fn parse_if(pair: Pair<Rule>) -> AstNodeType {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_code` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:466:8
[INFO] [stdout]     |
[INFO] [stdout] 466 | pub fn parse_code(code: String) -> Vec<AstNodeType> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_file` is never used
[INFO] [stdout]    --> src/pest/parse_ast.rs:485:8
[INFO] [stdout]     |
[INFO] [stdout] 485 | pub fn parse_file() -> Vec<AstNodeType> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `String`, `Number`, `Boolean`, and `Closure` are never constructed
[INFO] [stdout]   --> src/pest/frame.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ValType {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 15 |     String(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     Number(i32),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 17 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     Closure {
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValType` 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 `Frame` is never constructed
[INFO] [stdout]   --> src/pest/frame.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct Frame {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Frame` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `contains_key`, `get`, `set`, `create_scope`, and `drop_scope` are never used
[INFO] [stdout]    --> src/pest/frame.rs:94:12
[INFO] [stdout]     |
[INFO] [stdout] 93  | impl Frame {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 94  |     pub fn contains_key(&self, q: &String) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub fn get(&self, q: &String) -> Option<Rc<ValType>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn set(&mut self, q: String, val: Rc<ValType>, is_declare: bool) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn create_scope(&mut self, new_scope: Rc<RefCell<Scope>>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn drop_scope(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Closure` and `Block` are never constructed
[INFO] [stdout]    --> src/pest/frame.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub enum Scope {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] 135 |     Closure(ScopeStruct),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 136 |     Block(ScopeStruct),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Scope` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling z-lang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `play_object` and `parent_scope` are never read
[INFO] [stdout]    --> src/pest/frame.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub struct ScopeStruct {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 144 |     pub play_object: HashMap<String, Rc<ValType>>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 145 |     pub parent_scope: Option<Rc<RefCell<Scope>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScopeStruct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `contains_key`, `get_parent_scope`, `set`, and `set_parent` are never used
[INFO] [stdout]    --> src/pest/frame.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 149 |     fn get(&self, q: &String) -> Option<Rc<ValType>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     fn contains_key(&self, q: &String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn get_parent_scope(&self) -> Option<Rc<RefCell<Scope>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     fn set(&mut self, q: String, val: Rc<ValType>, is_declare: bool) -> bool {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn set_parent(&mut self, parent: Rc<RefCell<Scope>>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `get_parent_scope`, `set`, `contains_key`, and `set_parent` are never used
[INFO] [stdout]    --> src/pest/frame.rs:191:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl ScopeStruct {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 191 |     fn new(parent_scope: Option<Rc<RefCell<Scope>>>) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn get(&self, q: &String) -> Option<Rc<ValType>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     fn get_parent_scope(&self) -> Option<Rc<RefCell<Scope>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     fn set(&mut self, q: String, val: Rc<ValType>, is_declare: bool) -> bool {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     fn contains_key(&self, q: &String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 259 |     fn set_parent(&mut self, parent: Rc<RefCell<Scope>>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/pest/slick_script.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn main() {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_entry` is never used
[INFO] [stdout]   --> src/pest/slick_script.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn test_entry(code: String) -> ValType {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eval` is never used
[INFO] [stdout]   --> src/pest/slick_script.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn eval(ast: AstNodeType, frame: Rc<RefCell<Frame>>) -> Result<Rc<ValType>, SimpleError> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SimpleError` is never used
[INFO] [stdout]  --> src/util.rs:2:10
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum SimpleError {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `SimpleError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pest::Parser`
[INFO] [stdout]  --> src/pest/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pest::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pest_derive::Parser`
[INFO] [stdout]  --> src/pest/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pest_derive::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `implied_bounds_entailment` has been removed: converted into hard error, see PR #117984 <https://github.com/rust-lang/rust/pull/117984> for more information
[INFO] [stdout]  --> src/pest/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[allow(implied_bounds_entailment)]
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `self`
[INFO] [stdout]  --> src/pest/parse_ast.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{self, BufRead};
[INFO] [stdout]   |               ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::frame::ValType`
[INFO] [stdout]  --> src/pest/parse_ast.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::frame::ValType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/pest/parse_ast.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 446 |     if (inner_len == 3) {
[INFO] [stdout]     |        ^              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 446 -     if (inner_len == 3) {
[INFO] [stdout] 446 +     if inner_len == 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/pest/slick_script.rs:294:21
[INFO] [stdout]     |
[INFO] [stdout] 294 | /                     /**
[INFO] [stdout] 295 | |                      * TODO
[INFO] [stdout] 296 | |                      * 这里的实现, 需要入参表达式在新的作用域里执行
[INFO] [stdout] 297 | |                      */
[INFO] [stdout]     | |_______________________^
[INFO] [stdout] 298 |                       //  将入参在新的作用域声明(补充block的Declaration节点)
[INFO] [stdout] 299 |                       let need_insert_declare = argu_list.len() > 0;
[INFO] [stdout]     |                       ---------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `/* */` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `env` and `fs`
[INFO] [stdout]   --> src/pest/mod.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     use std::{env, fs};
[INFO] [stdout]    |               ^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/pest/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identifier`
[INFO] [stdout]   --> src/pest/parse_ast/tests.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |                 identifier,
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try ignoring the field: `identifier: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/pest/parse_ast/tests.rs:63:76
[INFO] [stdout]    |
[INFO] [stdout] 63 |           AstNodeType::FnDeclaration { return_type, identifier, argu_list, block } => {
[INFO] [stdout]    |                                                                            ^^^^^ help: try ignoring the field: `block: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `declare_type`
[INFO] [stdout]   --> src/pest/parse_ast/tests.rs:84:40
[INFO] [stdout]    |
[INFO] [stdout] 84 |             AstNodeType::Declaration { declare_type, identifier, additive } => {
[INFO] [stdout]    |                                        ^^^^^^^^^^^^ help: try ignoring the field: `declare_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `additive`
[INFO] [stdout]   --> src/pest/parse_ast/tests.rs:84:66
[INFO] [stdout]    |
[INFO] [stdout] 84 |             AstNodeType::Declaration { declare_type, identifier, additive } => {
[INFO] [stdout]    |                                                                  ^^^^^^^^ help: try ignoring the field: `additive: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `declare_type`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 declare_type,
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: try ignoring the field: `declare_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `additive`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:105:17
[INFO] [stdout]     |
[INFO] [stdout] 105 |                 additive,
[INFO] [stdout]     |                 ^^^^^^^^ help: try ignoring the field: `additive: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `judge_stat`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 judge_stat,
[INFO] [stdout]     |                 ^^^^^^^^^^ help: try ignoring the field: `judge_stat: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `if_stat`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:145:17
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 if_stat,
[INFO] [stdout]     |                 ^^^^^^^ help: try ignoring the field: `if_stat: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:188:37
[INFO] [stdout]     |
[INFO] [stdout] 188 |             AstNodeType::JudgeExp { left, right, judge } => {
[INFO] [stdout]     |                                     ^^^^ help: try ignoring the field: `left: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:188:43
[INFO] [stdout]     |
[INFO] [stdout] 188 |             AstNodeType::JudgeExp { left, right, judge } => {
[INFO] [stdout]     |                                           ^^^^^ help: try ignoring the field: `right: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `additive`
[INFO] [stdout]    --> src/pest/parse_ast/tests.rs:218:55
[INFO] [stdout]     |
[INFO] [stdout] 218 |             AstNodeType::AssignmentStatement { ident, additive } => {
[INFO] [stdout]     |                                                       ^^^^^^^^ help: try ignoring the field: `additive: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/pest/parse_ast.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |         r => {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pest/parse_ast.rs:495:12
[INFO] [stdout]     |
[INFO] [stdout] 495 |         Ok(mut pairs) => {
[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: `other`
[INFO] [stdout]   --> src/pest/frame.rs:81:27
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn partial_cmp(&self, other: &Self) -> Option<std::cmp::Ordering> {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scope`
[INFO] [stdout]   --> src/pest/slick_script.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 scope,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `scope: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/pest/slick_script.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 block,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `block: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/pest/slick_script.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 386 |         _ => {
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/pest/slick_script.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 71  |         AstNodeType::Statement { child } => {
[INFO] [stdout]     |         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 77  |         AstNodeType::IntLiteral(val) => {
[INFO] [stdout]     |         ---------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 81  |         AstNodeType::AdditiveExp { child } => {
[INFO] [stdout]     |         ---------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 107 |         AstNodeType::MulitiExp { child } => {
[INFO] [stdout]     |         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 386 |         _ => {
[INFO] [stdout]     |         ^ ...and 9 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]   --> src/pest/slick_script.rs:91:25
[INFO] [stdout]    |
[INFO] [stdout] 91 |                         args,
[INFO] [stdout]    |                         ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/pest/slick_script.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |                         args,
[INFO] [stdout]     |                         ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `declare_type`
[INFO] [stdout]    --> src/pest/slick_script.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |             declare_type,
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: try ignoring the field: `declare_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_contains` is never read
[INFO] [stdout]    --> src/pest/slick_script.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |             let mut is_contains = false;
[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: `name`
[INFO] [stdout]    --> src/pest/slick_script.rs:280:21
[INFO] [stdout]     |
[INFO] [stdout] 280 |                     name,
[INFO] [stdout]     |                     ^^^^ help: try ignoring the field: `name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type`
[INFO] [stdout]    --> src/pest/slick_script.rs:370:13
[INFO] [stdout]     |
[INFO] [stdout] 370 |             return_type,
[INFO] [stdout]     |             ^^^^^^^^^^^ help: try ignoring the field: `return_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pest/slick_script.rs:338:37
[INFO] [stdout]     |
[INFO] [stdout] 338 | ...                   let mut inner_stats = statements.as_mut().unwrap();
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `String` is never constructed
[INFO] [stdout]   --> src/pest/parse_ast.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum DeclareType {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 42 |     Int,
[INFO] [stdout] 43 |     String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeclareType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Closure` is never constructed
[INFO] [stdout]    --> src/pest/frame.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub enum Scope {
[INFO] [stdout]     |          ----- variant in this enum
[INFO] [stdout] 135 |     Closure(ScopeStruct),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Scope` 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 function `new` is never used
[INFO] [stdout]    --> src/pest/frame.rs:191:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl ScopeStruct {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] 191 |     fn new(parent_scope: Option<Rc<RefCell<Scope>>>) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/util.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 |   Calc(String),
[INFO] [stdout]   |   ---- ^^^^^^
[INFO] [stdout]   |   |
[INFO] [stdout]   |   field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `SimpleError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 |   Calc(()),
[INFO] [stdout]   |        ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Lex` and `Ast` are never constructed
[INFO] [stdout]  --> src/util.rs:3:3
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum SimpleError {
[INFO] [stdout]   |          ----------- variants in this enum
[INFO] [stdout] 3 |   Lex(String),
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 4 |   Ast(String),
[INFO] [stdout]   |   ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `SimpleError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] rustc-LLVM ERROR: IO failure on output stream: No space left on device
[INFO] [stderr] error: could not compile `z-lang` (lib test); 38 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/ad211ced81509462cdfe4c29ed10f97279a0acae/bin/rustc --crate-name z_lang --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=3329d882786779b9 -C extra-filename=-44b5312ba85f6fb9 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-b3603208c0de2608.rlib --extern m_lexer=/opt/rustwide/target/debug/deps/libm_lexer-5ce21f44f04ec90c.rlib --extern pest=/opt/rustwide/target/debug/deps/libpest-dd24d481a85ffc79.rlib --extern pest_derive=/opt/rustwide/target/debug/deps/libpest_derive-7f19ea2d83ce1f27.so --extern rowan=/opt/rustwide/target/debug/deps/librowan-6449977cf80bc478.rlib --cap-lints=forbid` (exit status: 101)
[INFO] running `Command { std: "docker" "inspect" "1266f577e9b4b362fe3fac507a82148b31cde02d4856aa424e5e94e2a99311ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1266f577e9b4b362fe3fac507a82148b31cde02d4856aa424e5e94e2a99311ac", kill_on_drop: false }`
[INFO] [stdout] 1266f577e9b4b362fe3fac507a82148b31cde02d4856aa424e5e94e2a99311ac
