[INFO] cloning repository https://github.com/Jengamon/SolomonLang
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jengamon/SolomonLang" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJengamon%2FSolomonLang", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJengamon%2FSolomonLang'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3e677cdbafaea08bca5238c2715dfe40e43da237
[INFO] checking Jengamon/SolomonLang against beta-2020-07-24 for pr-75494-beta
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJengamon%2FSolomonLang" "/workspace/builds/worker-13/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Jengamon/SolomonLang on toolchain beta-2020-07-24
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Jengamon/SolomonLang
[INFO] finished tweaking git repo https://github.com/Jengamon/SolomonLang
[INFO] tweaked toml for git repo https://github.com/Jengamon/SolomonLang written to /workspace/builds/worker-13/source/Cargo.toml
[INFO] crate git repo https://github.com/Jengamon/SolomonLang already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 51ecda300fec744ee0f9e2f52495aea1810ab0c2c19de67a846969ef98a4c4d2
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "51ecda300fec744ee0f9e2f52495aea1810ab0c2c19de67a846969ef98a4c4d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "51ecda300fec744ee0f9e2f52495aea1810ab0c2c19de67a846969ef98a4c4d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51ecda300fec744ee0f9e2f52495aea1810ab0c2c19de67a846969ef98a4c4d2", kill_on_drop: false }`
[INFO] [stdout] 51ecda300fec744ee0f9e2f52495aea1810ab0c2c19de67a846969ef98a4c4d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 366b4ecd66d2ad7b610dc61d944f6a6c578d2234e9ddbfd425025314e99ae8ee
[INFO] running `Command { std: "docker" "start" "-a" "366b4ecd66d2ad7b610dc61d944f6a6c578d2234e9ddbfd425025314e99ae8ee", kill_on_drop: false }`
[INFO] [stderr]     Checking solomon v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Expr`, `Stat`
[INFO] [stdout]  --> src/parser/pretty_print.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use parser::{Expr, Stat, ExprVisitor, StatVisitor, Literal};
[INFO] [stdout]   |              ^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/parser/mod.rs:75:26
[INFO] [stdout]    |
[INFO] [stdout] 75 | type PrefixParslet = Box<Fn(&mut Parser, Token) -> Result<Expr, ParserError>>;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Parser, Token) -> Result<Expr, ParserError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/parser/mod.rs:76:26
[INFO] [stdout]    |
[INFO] [stdout] 76 | type InfixParslet = (Box<Fn(&mut Parser, Precedence, Token, Expr) -> Result<Expr, ParserError>>, Precedence);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Parser, Precedence, Token, Expr) -> Result<Expr, ParserError>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Expr`, `Literal`
[INFO] [stdout]  --> src/interp.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use parser::{Expr, Stat, ExprMutVisitor, StatMutVisitor,
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 2 |     Assignment, Modification, Expression, Literal, ELiteral, NewObject, Unary, Binary,
[INFO] [stdout]   |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TokenType`, `Token`
[INFO] [stdout]  --> src/interp.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use lexer::{Token, TokenType};
[INFO] [stdout]   |             ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub type SolomonFunc = Fn(&mut Interpreter, Vec<SolomonObject>) -> SolomonObject;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Interpreter, Vec<SolomonObject>) -> SolomonObject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:33:20
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl PartialEq for SolomonCallable {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SolomonCallable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn eq(&self, o: &SolomonCallable) -> bool {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SolomonCallable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 |     Function(Rc<Box<SolomonCallable>>),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SolomonCallable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/var_store.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Expr`, `Stat`
[INFO] [stdout]  --> src/parser/pretty_print.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use parser::{Expr, Stat, ExprVisitor, StatVisitor, Literal};
[INFO] [stdout]   |              ^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/parser/mod.rs:75:26
[INFO] [stdout]    |
[INFO] [stdout] 75 | type PrefixParslet = Box<Fn(&mut Parser, Token) -> Result<Expr, ParserError>>;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Parser, Token) -> Result<Expr, ParserError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/parser/mod.rs:76:26
[INFO] [stdout]    |
[INFO] [stdout] 76 | type InfixParslet = (Box<Fn(&mut Parser, Precedence, Token, Expr) -> Result<Expr, ParserError>>, Precedence);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Parser, Precedence, Token, Expr) -> Result<Expr, ParserError>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Expr`, `Literal`
[INFO] [stdout]  --> src/interp.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use parser::{Expr, Stat, ExprMutVisitor, StatMutVisitor,
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 2 |     Assignment, Modification, Expression, Literal, ELiteral, NewObject, Unary, Binary,
[INFO] [stdout]   |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TokenType`, `Token`
[INFO] [stdout]  --> src/interp.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use lexer::{Token, TokenType};
[INFO] [stdout]   |             ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub type SolomonFunc = Fn(&mut Interpreter, Vec<SolomonObject>) -> SolomonObject;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Interpreter, Vec<SolomonObject>) -> SolomonObject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:33:20
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl PartialEq for SolomonCallable {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SolomonCallable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn eq(&self, o: &SolomonCallable) -> bool {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SolomonCallable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/interp.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 |     Function(Rc<Box<SolomonCallable>>),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SolomonCallable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/var_store.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/lexer/mod.rs:140:22
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 Some(r@'_') | Some(r@'@') | Some(r@'!') | Some(r@'?') => { s.push(self.next_char().unwrap()) },
[INFO] [stdout]     |                      ^^^^^         ^^^^^         ^^^^^         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 Some(_r) | Some(_r) | Some(_r) | Some(_r) => { s.push(self.next_char().unwrap()) },
[INFO] [stdout]     |                      ^^         ^^         ^^         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `long`
[INFO] [stdout]    --> src/parser/mod.rs:151:25
[INFO] [stdout]     |
[INFO] [stdout] 151 |                     (Ok(long), Ok(short)) => Ok(expr::Literal::new(Literal::Integer(short), t)),
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_long`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:160:65
[INFO] [stdout]     |
[INFO] [stdout] 160 |             TokenType::LBrace => Some(Box::new(|p: &mut Parser, t: Token| {
[INFO] [stdout]     |                                                                 ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:179:65
[INFO] [stdout]     |
[INFO] [stdout] 179 |             TokenType::LParen => Some(Box::new(|p: &mut Parser, t:Token| {
[INFO] [stdout]     |                                                                 ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:184:62
[INFO] [stdout]     |
[INFO] [stdout] 184 |             TokenType::Fun => Some(Box::new(|p: &mut Parser, t: Token| {
[INFO] [stdout]     |                                                              ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:208:67
[INFO] [stdout]     |
[INFO] [stdout] 208 |             TokenType::LBracket => Some(Box::new(|p: &mut Parser, t: Token| {
[INFO] [stdout]     |                                                                   ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/parser/mod.rs:241:69
[INFO] [stdout]     |
[INFO] [stdout] 241 |             TokenType::ThinArrow => Some((Box::new(|p: &mut Parser, r: Precedence, t: Token, l: Expr| {
[INFO] [stdout]     |                                                                     ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:241:84
[INFO] [stdout]     |
[INFO] [stdout] 241 |             TokenType::ThinArrow => Some((Box::new(|p: &mut Parser, r: Precedence, t: Token, l: Expr| {
[INFO] [stdout]     |                                                                                    ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tt`
[INFO] [stdout]    --> src/parser/mod.rs:301:25
[INFO] [stdout]     |
[INFO] [stdout] 301 |                         tt => Ok(stat::Expression::new(left))
[INFO] [stdout]     |                         ^^ help: if this is intentional, prefix it with an underscore: `_tt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mod_name`
[INFO] [stdout]   --> src/interp.rs:60:45
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn submit<S: AsRef<str>>(&mut self, mod_name: S, p: Vec<Stat>) -> Option<SolomonObject> {
[INFO] [stdout]    |                                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mod_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modification`
[INFO] [stdout]   --> src/interp.rs:74:38
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn visit_modification(&mut self, modification: Modification) -> () {}
[INFO] [stdout]    |                                      ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modification`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/interp.rs:75:36
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn visit_expression(&mut self, expression: Expression) -> () {}
[INFO] [stdout]    |                                    ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `newobject`
[INFO] [stdout]   --> src/interp.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn visit_newobject(&mut self, newobject: NewObject) -> () {}
[INFO] [stdout]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_newobject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `literal`
[INFO] [stdout]   --> src/interp.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn visit_literal(&mut self, literal: ELiteral) -> () {}
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_literal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unary`
[INFO] [stdout]   --> src/interp.rs:81:31
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn visit_unary(&mut self, unary: Unary) -> () {}
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_unary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `binary`
[INFO] [stdout]   --> src/interp.rs:82:32
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn visit_binary(&mut self, binary: Binary) -> () {}
[INFO] [stdout]    |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_binary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `grouping`
[INFO] [stdout]   --> src/interp.rs:83:34
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn visit_grouping(&mut self, grouping: Grouping) -> () {}
[INFO] [stdout]    |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_grouping`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `function`
[INFO] [stdout]   --> src/interp.rs:84:34
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn visit_function(&mut self, function: Function) -> () {}
[INFO] [stdout]    |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/interp.rs:85:31
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn visit_block(&mut self, block: Block) -> () {}
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `functioncall`
[INFO] [stdout]   --> src/interp.rs:86:38
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn visit_functioncall(&mut self, functioncall: FunctionCall) -> () {}
[INFO] [stdout]    |                                      ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_functioncall`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut lexer = lexer::Lexer::new(text.clone());
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut parser = parser::Parser::new(lexer.clone());
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/lexer/mod.rs:140:22
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 Some(r@'_') | Some(r@'@') | Some(r@'!') | Some(r@'?') => { s.push(self.next_char().unwrap()) },
[INFO] [stdout]     |                      ^^^^^         ^^^^^         ^^^^^         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 Some(_r) | Some(_r) | Some(_r) | Some(_r) => { s.push(self.next_char().unwrap()) },
[INFO] [stdout]     |                      ^^         ^^         ^^         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `long`
[INFO] [stdout]    --> src/parser/mod.rs:151:25
[INFO] [stdout]     |
[INFO] [stdout] 151 |                     (Ok(long), Ok(short)) => Ok(expr::Literal::new(Literal::Integer(short), t)),
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_long`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:160:65
[INFO] [stdout]     |
[INFO] [stdout] 160 |             TokenType::LBrace => Some(Box::new(|p: &mut Parser, t: Token| {
[INFO] [stdout]     |                                                                 ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:179:65
[INFO] [stdout]     |
[INFO] [stdout] 179 |             TokenType::LParen => Some(Box::new(|p: &mut Parser, t:Token| {
[INFO] [stdout]     |                                                                 ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:184:62
[INFO] [stdout]     |
[INFO] [stdout] 184 |             TokenType::Fun => Some(Box::new(|p: &mut Parser, t: Token| {
[INFO] [stdout]     |                                                              ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:208:67
[INFO] [stdout]     |
[INFO] [stdout] 208 |             TokenType::LBracket => Some(Box::new(|p: &mut Parser, t: Token| {
[INFO] [stdout]     |                                                                   ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/parser/mod.rs:241:69
[INFO] [stdout]     |
[INFO] [stdout] 241 |             TokenType::ThinArrow => Some((Box::new(|p: &mut Parser, r: Precedence, t: Token, l: Expr| {
[INFO] [stdout]     |                                                                     ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser/mod.rs:241:84
[INFO] [stdout]     |
[INFO] [stdout] 241 |             TokenType::ThinArrow => Some((Box::new(|p: &mut Parser, r: Precedence, t: Token, l: Expr| {
[INFO] [stdout]     |                                                                                    ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tt`
[INFO] [stdout]    --> src/parser/mod.rs:301:25
[INFO] [stdout]     |
[INFO] [stdout] 301 |                         tt => Ok(stat::Expression::new(left))
[INFO] [stdout]     |                         ^^ help: if this is intentional, prefix it with an underscore: `_tt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mod_name`
[INFO] [stdout]   --> src/interp.rs:60:45
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn submit<S: AsRef<str>>(&mut self, mod_name: S, p: Vec<Stat>) -> Option<SolomonObject> {
[INFO] [stdout]    |                                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mod_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modification`
[INFO] [stdout]   --> src/interp.rs:74:38
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn visit_modification(&mut self, modification: Modification) -> () {}
[INFO] [stdout]    |                                      ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modification`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/interp.rs:75:36
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn visit_expression(&mut self, expression: Expression) -> () {}
[INFO] [stdout]    |                                    ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `newobject`
[INFO] [stdout]   --> src/interp.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn visit_newobject(&mut self, newobject: NewObject) -> () {}
[INFO] [stdout]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_newobject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `literal`
[INFO] [stdout]   --> src/interp.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn visit_literal(&mut self, literal: ELiteral) -> () {}
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_literal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unary`
[INFO] [stdout]   --> src/interp.rs:81:31
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn visit_unary(&mut self, unary: Unary) -> () {}
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_unary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `binary`
[INFO] [stdout]   --> src/interp.rs:82:32
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn visit_binary(&mut self, binary: Binary) -> () {}
[INFO] [stdout]    |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_binary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `grouping`
[INFO] [stdout]   --> src/interp.rs:83:34
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn visit_grouping(&mut self, grouping: Grouping) -> () {}
[INFO] [stdout]    |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_grouping`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `function`
[INFO] [stdout]   --> src/interp.rs:84:34
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn visit_function(&mut self, function: Function) -> () {}
[INFO] [stdout]    |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/interp.rs:85:31
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn visit_block(&mut self, block: Block) -> () {}
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `functioncall`
[INFO] [stdout]   --> src/interp.rs:86:38
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn visit_functioncall(&mut self, functioncall: FunctionCall) -> () {}
[INFO] [stdout]    |                                      ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_functioncall`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut lexer = lexer::Lexer::new(text.clone());
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut parser = parser::Parser::new(lexer.clone());
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private type `parser::Atom` in public interface (error E0446)
[INFO] [stdout]   --> src/parser/mod.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Atom(Atom),
[INFO] [stdout]    |          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(private_in_public)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #34537 <https://github.com/rust-lang/rust/issues/34537>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private type `parser::Atom` in public interface (error E0446)
[INFO] [stdout]   --> src/parser/mod.rs:55:10
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Atom(Atom), // Type <atomname> only has the value in it of $<atomname>
[INFO] [stdout]    |          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #34537 <https://github.com/rust-lang/rust/issues/34537>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]  --> src/lexer/token.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Identifier, Integer, Float, String, Atom,
[INFO] [stdout]   |                                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `FloatType`
[INFO] [stdout]   --> src/lexer/token.rs:14:45
[INFO] [stdout]    |
[INFO] [stdout] 14 |     AnyType, VoidType, IntType, StringType, FloatType,
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Bang`
[INFO] [stdout]   --> src/lexer/token.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Bang, // !
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `BangEqual`
[INFO] [stdout]   --> src/lexer/token.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     BangEqual,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `LessThan`
[INFO] [stdout]   --> src/lexer/token.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `GreaterThan`
[INFO] [stdout]   --> src/lexer/token.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `LessEqual`
[INFO] [stdout]   --> src/lexer/token.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `GreaterEqual`
[INFO] [stdout]   --> src/lexer/token.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Unary`
[INFO] [stdout]   --> src/parser/expr.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | Unary(Unary),
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_newobject`
[INFO] [stdout]   --> src/parser/expr.rs:39:10
[INFO] [stdout]    |
[INFO] [stdout] 39 |   pub fn is_newobject(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_newobject`
[INFO] [stdout]   --> src/parser/expr.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn as_newobject(&self) -> Option<NewObject> {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_literal`
[INFO] [stdout]   --> src/parser/expr.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 |   pub fn is_literal(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_literal`
[INFO] [stdout]   --> src/parser/expr.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 |   pub fn as_literal(&self) -> Option<Literal> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_unary`
[INFO] [stdout]   --> src/parser/expr.rs:65:10
[INFO] [stdout]    |
[INFO] [stdout] 65 |   pub fn is_unary(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_unary`
[INFO] [stdout]   --> src/parser/expr.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 |   pub fn as_unary(&self) -> Option<Unary> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_binary`
[INFO] [stdout]   --> src/parser/expr.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |   pub fn is_binary(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_binary`
[INFO] [stdout]   --> src/parser/expr.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |   pub fn as_binary(&self) -> Option<Binary> {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_grouping`
[INFO] [stdout]   --> src/parser/expr.rs:91:10
[INFO] [stdout]    |
[INFO] [stdout] 91 |   pub fn is_grouping(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_grouping`
[INFO] [stdout]   --> src/parser/expr.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 |   pub fn as_grouping(&self) -> Option<Grouping> {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_function`
[INFO] [stdout]    --> src/parser/expr.rs:104:10
[INFO] [stdout]     |
[INFO] [stdout] 104 |   pub fn is_function(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_function`
[INFO] [stdout]    --> src/parser/expr.rs:111:10
[INFO] [stdout]     |
[INFO] [stdout] 111 |   pub fn as_function(&self) -> Option<Function> {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_block`
[INFO] [stdout]    --> src/parser/expr.rs:117:10
[INFO] [stdout]     |
[INFO] [stdout] 117 |   pub fn is_block(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_block`
[INFO] [stdout]    --> src/parser/expr.rs:124:10
[INFO] [stdout]     |
[INFO] [stdout] 124 |   pub fn as_block(&self) -> Option<Block> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_functioncall`
[INFO] [stdout]    --> src/parser/expr.rs:130:10
[INFO] [stdout]     |
[INFO] [stdout] 130 |   pub fn is_functioncall(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_functioncall`
[INFO] [stdout]    --> src/parser/expr.rs:137:10
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn as_functioncall(&self) -> Option<FunctionCall> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:154:10
[INFO] [stdout]     |
[INFO] [stdout] 154 |   pub fn new_naked(map: HashMap<String, Expr>,) -> NewObject {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:161:10
[INFO] [stdout]     |
[INFO] [stdout] 161 |   pub fn boxed_new_naked(map: HashMap<String, Expr>,) -> Box<NewObject> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:175:10
[INFO] [stdout]     |
[INFO] [stdout] 175 |   pub fn boxed_new(map: HashMap<String, Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |   pub fn new_naked(literal: PLiteral,token: Token,) -> Literal {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:200:10
[INFO] [stdout]     |
[INFO] [stdout] 200 |   pub fn boxed_new_naked(literal: PLiteral,token: Token,) -> Box<Literal> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:218:10
[INFO] [stdout]     |
[INFO] [stdout] 218 |   pub fn boxed_new(literal: PLiteral,token: Token,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:236:10
[INFO] [stdout]     |
[INFO] [stdout] 236 |   pub fn new_naked(op: Token,value: Box<Expr>,) -> Unary {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:245:10
[INFO] [stdout]     |
[INFO] [stdout] 245 |   pub fn boxed_new_naked(op: Token,value: Box<Expr>,) -> Box<Unary> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/parser/expr.rs:254:10
[INFO] [stdout]     |
[INFO] [stdout] 254 |   pub fn new(op: Token,value: Box<Expr>,) -> Expr {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:263:10
[INFO] [stdout]     |
[INFO] [stdout] 263 |   pub fn boxed_new(op: Token,value: Box<Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:282:10
[INFO] [stdout]     |
[INFO] [stdout] 282 |   pub fn new_naked(op: Token,lhs: Box<Expr>,rhs: Box<Expr>,) -> Binary {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:293:10
[INFO] [stdout]     |
[INFO] [stdout] 293 |   pub fn boxed_new_naked(op: Token,lhs: Box<Expr>,rhs: Box<Expr>,) -> Box<Binary> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:315:10
[INFO] [stdout]     |
[INFO] [stdout] 315 |   pub fn boxed_new(op: Token,lhs: Box<Expr>,rhs: Box<Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:334:10
[INFO] [stdout]     |
[INFO] [stdout] 334 |   pub fn new_naked(expr: Box<Expr>,) -> Grouping {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:341:10
[INFO] [stdout]     |
[INFO] [stdout] 341 |   pub fn boxed_new_naked(expr: Box<Expr>,) -> Box<Grouping> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:355:10
[INFO] [stdout]     |
[INFO] [stdout] 355 |   pub fn boxed_new(expr: Box<Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:373:10
[INFO] [stdout]     |
[INFO] [stdout] 373 |   pub fn new_naked(ret_type: Type,args: HashMap<String, Type>,body: Box<Expr>,is_method: bool,) -> Function {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:386:10
[INFO] [stdout]     |
[INFO] [stdout] 386 |   pub fn boxed_new_naked(ret_type: Type,args: HashMap<String, Type>,body: Box<Expr>,is_method: bool,) -> Box<Function> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 |   pub fn boxed_new(ret_type: Type,args: HashMap<String, Type>,body: Box<Expr>,is_method: bool,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:433:10
[INFO] [stdout]     |
[INFO] [stdout] 433 |   pub fn new_naked(body: Vec<Stat>,) -> Block {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:440:10
[INFO] [stdout]     |
[INFO] [stdout] 440 |   pub fn boxed_new_naked(body: Vec<Stat>,) -> Box<Block> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:454:10
[INFO] [stdout]     |
[INFO] [stdout] 454 |   pub fn boxed_new(body: Vec<Stat>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:471:10
[INFO] [stdout]     |
[INFO] [stdout] 471 |   pub fn new_naked(target: Box<Expr>,args: Arguments,as_type: Option<Type>,) -> FunctionCall {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:482:10
[INFO] [stdout]     |
[INFO] [stdout] 482 |   pub fn boxed_new_naked(target: Box<Expr>,args: Arguments,as_type: Option<Type>,) -> Box<FunctionCall> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:504:10
[INFO] [stdout]     |
[INFO] [stdout] 504 |   pub fn boxed_new(target: Box<Expr>,args: Arguments,as_type: Option<Type>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_assignment`
[INFO] [stdout]   --> src/parser/stat.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 |   pub fn is_assignment(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_assignment`
[INFO] [stdout]   --> src/parser/stat.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 |   pub fn as_assignment(&self) -> Option<Assignment> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_modification`
[INFO] [stdout]   --> src/parser/stat.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn is_modification(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_modification`
[INFO] [stdout]   --> src/parser/stat.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 |   pub fn as_modification(&self) -> Option<Modification> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_expression`
[INFO] [stdout]   --> src/parser/stat.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 |   pub fn is_expression(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_expression`
[INFO] [stdout]   --> src/parser/stat.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |   pub fn as_expression(&self) -> Option<Expression> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]   --> src/parser/stat.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |   pub fn new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Assignment {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]   --> src/parser/stat.rs:96:10
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn boxed_new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Box<Assignment> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/stat.rs:118:10
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn boxed_new(lhs: Expr,rhs: Expr,op: Token,) -> Box<Stat> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:139:10
[INFO] [stdout]     |
[INFO] [stdout] 139 |   pub fn new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Modification {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 |   pub fn boxed_new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Box<Modification> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/stat.rs:172:10
[INFO] [stdout]     |
[INFO] [stdout] 172 |   pub fn boxed_new(lhs: Expr,rhs: Expr,op: Token,) -> Box<Stat> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |   pub fn new_naked(expr: Expr,) -> Expression {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:198:10
[INFO] [stdout]     |
[INFO] [stdout] 198 |   pub fn boxed_new_naked(expr: Expr,) -> Box<Expression> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/stat.rs:212:10
[INFO] [stdout]     |
[INFO] [stdout] 212 |   pub fn boxed_new(expr: Expr,) -> Box<Stat> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Float`
[INFO] [stdout]   --> src/parser/mod.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     Float(i64),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]   --> src/parser/mod.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     String(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Atom`
[INFO] [stdout]   --> src/parser/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Atom(Atom),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Float`
[INFO] [stdout]   --> src/parser/mod.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     Float,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]   --> src/parser/mod.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Atom`
[INFO] [stdout]   --> src/parser/mod.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Atom(Atom), // Type <atomname> only has the value in it of $<atomname>
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Any`
[INFO] [stdout]   --> src/parser/mod.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     Any,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `dispose`
[INFO] [stdout]    --> src/parser/mod.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn dispose<F>(&mut self, prec: F) where F: Fn(TokenType) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `strict_mode`
[INFO] [stdout]  --> src/interp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     strict_mode: bool
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `opts`
[INFO] [stdout]   --> src/interp.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     opts: Options,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `SolomonFunc`
[INFO] [stdout]   --> src/interp.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub type SolomonFunc = Fn(&mut Interpreter, Vec<SolomonObject>) -> SolomonObject;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Null`
[INFO] [stdout]   --> src/interp.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Null,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Integer`
[INFO] [stdout]   --> src/interp.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     Integer(i64),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Float`
[INFO] [stdout]   --> src/interp.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     Float(f64),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Atom`
[INFO] [stdout]   --> src/interp.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Atom(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]   --> src/interp.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     String(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Object`
[INFO] [stdout]   --> src/interp.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Object(SolomonObj),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Function`
[INFO] [stdout]   --> src/interp.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     Function(Rc<Box<SolomonCallable>>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum is never used: `VarMessage`
[INFO] [stdout]  --> src/var_store.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | enum VarMessage {
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `MAX_GENERATIONS`
[INFO] [stdout]   --> src/var_store.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | const MAX_GENERATIONS: usize = 100;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Generation`
[INFO] [stdout]   --> src/var_store.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub type Generation = usize;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `VariableRef`
[INFO] [stdout]   --> src/var_store.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct VariableRef(Sender<VarMessage>, String, usize);
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `VariableStore`
[INFO] [stdout]   --> src/var_store.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct VariableStore {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/var_store.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn new() -> VariableStore {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_variable`
[INFO] [stdout]   --> src/var_store.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_variable<S: AsRef<str>>(&mut self, name: S) -> VariableRef {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `reference`
[INFO] [stdout]   --> src/var_store.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn reference<S: AsRef<str>>(&mut self, name: S) -> Result<VariableRef, String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 125 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private type `parser::Atom` in public interface (error E0446)
[INFO] [stdout]   --> src/parser/mod.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Atom(Atom),
[INFO] [stdout]    |          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(private_in_public)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #34537 <https://github.com/rust-lang/rust/issues/34537>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private type `parser::Atom` in public interface (error E0446)
[INFO] [stdout]   --> src/parser/mod.rs:55:10
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Atom(Atom), // Type <atomname> only has the value in it of $<atomname>
[INFO] [stdout]    |          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #34537 <https://github.com/rust-lang/rust/issues/34537>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]  --> src/lexer/token.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Identifier, Integer, Float, String, Atom,
[INFO] [stdout]   |                                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `FloatType`
[INFO] [stdout]   --> src/lexer/token.rs:14:45
[INFO] [stdout]    |
[INFO] [stdout] 14 |     AnyType, VoidType, IntType, StringType, FloatType,
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Bang`
[INFO] [stdout]   --> src/lexer/token.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Bang, // !
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `BangEqual`
[INFO] [stdout]   --> src/lexer/token.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     BangEqual,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `LessThan`
[INFO] [stdout]   --> src/lexer/token.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `GreaterThan`
[INFO] [stdout]   --> src/lexer/token.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `LessEqual`
[INFO] [stdout]   --> src/lexer/token.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `GreaterEqual`
[INFO] [stdout]   --> src/lexer/token.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |     LessThan, GreaterThan, LessEqual, GreaterEqual, // < > <= >=
[INFO] [stdout]    |                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Unary`
[INFO] [stdout]   --> src/parser/expr.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | Unary(Unary),
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_newobject`
[INFO] [stdout]   --> src/parser/expr.rs:39:10
[INFO] [stdout]    |
[INFO] [stdout] 39 |   pub fn is_newobject(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_newobject`
[INFO] [stdout]   --> src/parser/expr.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn as_newobject(&self) -> Option<NewObject> {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_literal`
[INFO] [stdout]   --> src/parser/expr.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 |   pub fn is_literal(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_literal`
[INFO] [stdout]   --> src/parser/expr.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 |   pub fn as_literal(&self) -> Option<Literal> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_unary`
[INFO] [stdout]   --> src/parser/expr.rs:65:10
[INFO] [stdout]    |
[INFO] [stdout] 65 |   pub fn is_unary(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_unary`
[INFO] [stdout]   --> src/parser/expr.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 |   pub fn as_unary(&self) -> Option<Unary> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_binary`
[INFO] [stdout]   --> src/parser/expr.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |   pub fn is_binary(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_binary`
[INFO] [stdout]   --> src/parser/expr.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |   pub fn as_binary(&self) -> Option<Binary> {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_grouping`
[INFO] [stdout]   --> src/parser/expr.rs:91:10
[INFO] [stdout]    |
[INFO] [stdout] 91 |   pub fn is_grouping(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_grouping`
[INFO] [stdout]   --> src/parser/expr.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 |   pub fn as_grouping(&self) -> Option<Grouping> {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_function`
[INFO] [stdout]    --> src/parser/expr.rs:104:10
[INFO] [stdout]     |
[INFO] [stdout] 104 |   pub fn is_function(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_function`
[INFO] [stdout]    --> src/parser/expr.rs:111:10
[INFO] [stdout]     |
[INFO] [stdout] 111 |   pub fn as_function(&self) -> Option<Function> {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_block`
[INFO] [stdout]    --> src/parser/expr.rs:117:10
[INFO] [stdout]     |
[INFO] [stdout] 117 |   pub fn is_block(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_block`
[INFO] [stdout]    --> src/parser/expr.rs:124:10
[INFO] [stdout]     |
[INFO] [stdout] 124 |   pub fn as_block(&self) -> Option<Block> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_functioncall`
[INFO] [stdout]    --> src/parser/expr.rs:130:10
[INFO] [stdout]     |
[INFO] [stdout] 130 |   pub fn is_functioncall(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_functioncall`
[INFO] [stdout]    --> src/parser/expr.rs:137:10
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn as_functioncall(&self) -> Option<FunctionCall> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:154:10
[INFO] [stdout]     |
[INFO] [stdout] 154 |   pub fn new_naked(map: HashMap<String, Expr>,) -> NewObject {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:161:10
[INFO] [stdout]     |
[INFO] [stdout] 161 |   pub fn boxed_new_naked(map: HashMap<String, Expr>,) -> Box<NewObject> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:175:10
[INFO] [stdout]     |
[INFO] [stdout] 175 |   pub fn boxed_new(map: HashMap<String, Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |   pub fn new_naked(literal: PLiteral,token: Token,) -> Literal {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:200:10
[INFO] [stdout]     |
[INFO] [stdout] 200 |   pub fn boxed_new_naked(literal: PLiteral,token: Token,) -> Box<Literal> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:218:10
[INFO] [stdout]     |
[INFO] [stdout] 218 |   pub fn boxed_new(literal: PLiteral,token: Token,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:236:10
[INFO] [stdout]     |
[INFO] [stdout] 236 |   pub fn new_naked(op: Token,value: Box<Expr>,) -> Unary {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:245:10
[INFO] [stdout]     |
[INFO] [stdout] 245 |   pub fn boxed_new_naked(op: Token,value: Box<Expr>,) -> Box<Unary> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/parser/expr.rs:254:10
[INFO] [stdout]     |
[INFO] [stdout] 254 |   pub fn new(op: Token,value: Box<Expr>,) -> Expr {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:263:10
[INFO] [stdout]     |
[INFO] [stdout] 263 |   pub fn boxed_new(op: Token,value: Box<Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:282:10
[INFO] [stdout]     |
[INFO] [stdout] 282 |   pub fn new_naked(op: Token,lhs: Box<Expr>,rhs: Box<Expr>,) -> Binary {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:293:10
[INFO] [stdout]     |
[INFO] [stdout] 293 |   pub fn boxed_new_naked(op: Token,lhs: Box<Expr>,rhs: Box<Expr>,) -> Box<Binary> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:315:10
[INFO] [stdout]     |
[INFO] [stdout] 315 |   pub fn boxed_new(op: Token,lhs: Box<Expr>,rhs: Box<Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:334:10
[INFO] [stdout]     |
[INFO] [stdout] 334 |   pub fn new_naked(expr: Box<Expr>,) -> Grouping {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:341:10
[INFO] [stdout]     |
[INFO] [stdout] 341 |   pub fn boxed_new_naked(expr: Box<Expr>,) -> Box<Grouping> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:355:10
[INFO] [stdout]     |
[INFO] [stdout] 355 |   pub fn boxed_new(expr: Box<Expr>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:373:10
[INFO] [stdout]     |
[INFO] [stdout] 373 |   pub fn new_naked(ret_type: Type,args: HashMap<String, Type>,body: Box<Expr>,is_method: bool,) -> Function {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:386:10
[INFO] [stdout]     |
[INFO] [stdout] 386 |   pub fn boxed_new_naked(ret_type: Type,args: HashMap<String, Type>,body: Box<Expr>,is_method: bool,) -> Box<Function> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 |   pub fn boxed_new(ret_type: Type,args: HashMap<String, Type>,body: Box<Expr>,is_method: bool,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:433:10
[INFO] [stdout]     |
[INFO] [stdout] 433 |   pub fn new_naked(body: Vec<Stat>,) -> Block {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:440:10
[INFO] [stdout]     |
[INFO] [stdout] 440 |   pub fn boxed_new_naked(body: Vec<Stat>,) -> Box<Block> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:454:10
[INFO] [stdout]     |
[INFO] [stdout] 454 |   pub fn boxed_new(body: Vec<Stat>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:471:10
[INFO] [stdout]     |
[INFO] [stdout] 471 |   pub fn new_naked(target: Box<Expr>,args: Arguments,as_type: Option<Type>,) -> FunctionCall {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/expr.rs:482:10
[INFO] [stdout]     |
[INFO] [stdout] 482 |   pub fn boxed_new_naked(target: Box<Expr>,args: Arguments,as_type: Option<Type>,) -> Box<FunctionCall> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/expr.rs:504:10
[INFO] [stdout]     |
[INFO] [stdout] 504 |   pub fn boxed_new(target: Box<Expr>,args: Arguments,as_type: Option<Type>,) -> Box<Expr> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_assignment`
[INFO] [stdout]   --> src/parser/stat.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 |   pub fn is_assignment(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_assignment`
[INFO] [stdout]   --> src/parser/stat.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 |   pub fn as_assignment(&self) -> Option<Assignment> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_modification`
[INFO] [stdout]   --> src/parser/stat.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn is_modification(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_modification`
[INFO] [stdout]   --> src/parser/stat.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 |   pub fn as_modification(&self) -> Option<Modification> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_expression`
[INFO] [stdout]   --> src/parser/stat.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 |   pub fn is_expression(&self) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_expression`
[INFO] [stdout]   --> src/parser/stat.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |   pub fn as_expression(&self) -> Option<Expression> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]   --> src/parser/stat.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |   pub fn new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Assignment {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]   --> src/parser/stat.rs:96:10
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn boxed_new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Box<Assignment> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/stat.rs:118:10
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn boxed_new(lhs: Expr,rhs: Expr,op: Token,) -> Box<Stat> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:139:10
[INFO] [stdout]     |
[INFO] [stdout] 139 |   pub fn new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Modification {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 |   pub fn boxed_new_naked(lhs: Expr,rhs: Expr,op: Token,) -> Box<Modification> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/stat.rs:172:10
[INFO] [stdout]     |
[INFO] [stdout] 172 |   pub fn boxed_new(lhs: Expr,rhs: Expr,op: Token,) -> Box<Stat> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |   pub fn new_naked(expr: Expr,) -> Expression {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new_naked`
[INFO] [stdout]    --> src/parser/stat.rs:198:10
[INFO] [stdout]     |
[INFO] [stdout] 198 |   pub fn boxed_new_naked(expr: Expr,) -> Box<Expression> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boxed_new`
[INFO] [stdout]    --> src/parser/stat.rs:212:10
[INFO] [stdout]     |
[INFO] [stdout] 212 |   pub fn boxed_new(expr: Expr,) -> Box<Stat> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Float`
[INFO] [stdout]   --> src/parser/mod.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     Float(i64),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]   --> src/parser/mod.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     String(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Atom`
[INFO] [stdout]   --> src/parser/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Atom(Atom),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Float`
[INFO] [stdout]   --> src/parser/mod.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     Float,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]   --> src/parser/mod.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Atom`
[INFO] [stdout]   --> src/parser/mod.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Atom(Atom), // Type <atomname> only has the value in it of $<atomname>
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Any`
[INFO] [stdout]   --> src/parser/mod.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     Any,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `dispose`
[INFO] [stdout]    --> src/parser/mod.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn dispose<F>(&mut self, prec: F) where F: Fn(TokenType) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `strict_mode`
[INFO] [stdout]  --> src/interp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     strict_mode: bool
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `opts`
[INFO] [stdout]   --> src/interp.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     opts: Options,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `SolomonFunc`
[INFO] [stdout]   --> src/interp.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub type SolomonFunc = Fn(&mut Interpreter, Vec<SolomonObject>) -> SolomonObject;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Null`
[INFO] [stdout]   --> src/interp.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Null,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Integer`
[INFO] [stdout]   --> src/interp.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     Integer(i64),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Float`
[INFO] [stdout]   --> src/interp.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     Float(f64),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Atom`
[INFO] [stdout]   --> src/interp.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Atom(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `String`
[INFO] [stdout]   --> src/interp.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     String(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Object`
[INFO] [stdout]   --> src/interp.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Object(SolomonObj),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Function`
[INFO] [stdout]   --> src/interp.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     Function(Rc<Box<SolomonCallable>>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum is never used: `VarMessage`
[INFO] [stdout]  --> src/var_store.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | enum VarMessage {
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `MAX_GENERATIONS`
[INFO] [stdout]   --> src/var_store.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | const MAX_GENERATIONS: usize = 100;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias is never used: `Generation`
[INFO] [stdout]   --> src/var_store.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub type Generation = usize;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `VariableRef`
[INFO] [stdout]   --> src/var_store.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct VariableRef(Sender<VarMessage>, String, usize);
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `VariableStore`
[INFO] [stdout]   --> src/var_store.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct VariableStore {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/var_store.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn new() -> VariableStore {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new_variable`
[INFO] [stdout]   --> src/var_store.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new_variable<S: AsRef<str>>(&mut self, name: S) -> VariableRef {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `reference`
[INFO] [stdout]   --> src/var_store.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn reference<S: AsRef<str>>(&mut self, name: S) -> Result<VariableRef, String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 125 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1.05s
[INFO] running `Command { std: "docker" "inspect" "366b4ecd66d2ad7b610dc61d944f6a6c578d2234e9ddbfd425025314e99ae8ee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "366b4ecd66d2ad7b610dc61d944f6a6c578d2234e9ddbfd425025314e99ae8ee", kill_on_drop: false }`
[INFO] [stdout] 366b4ecd66d2ad7b610dc61d944f6a6c578d2234e9ddbfd425025314e99ae8ee
