[INFO] cloning repository https://github.com/Allen-B1/calc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Allen-B1/calc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAllen-B1%2Fcalc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAllen-B1%2Fcalc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2a9da38ed07a7f453b946001863ac6fb2a777b31
[INFO] building Allen-B1/calc against try#334963c956d25708feab489a3816ae63f639355d for pr-135216
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAllen-B1%2Fcalc" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Allen-B1/calc on toolchain 334963c956d25708feab489a3816ae63f639355d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Allen-B1/calc
[INFO] finished tweaking git repo https://github.com/Allen-B1/calc
[INFO] tweaked toml for git repo https://github.com/Allen-B1/calc written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/Allen-B1/calc 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" "+334963c956d25708feab489a3816ae63f639355d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4c2ea4836d08331e2417fff7ebb1177e88c61904c96e23eab3dc98953116bbef
[INFO] running `Command { std: "docker" "start" "-a" "4c2ea4836d08331e2417fff7ebb1177e88c61904c96e23eab3dc98953116bbef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4c2ea4836d08331e2417fff7ebb1177e88c61904c96e23eab3dc98953116bbef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c2ea4836d08331e2417fff7ebb1177e88c61904c96e23eab3dc98953116bbef", kill_on_drop: false }`
[INFO] [stdout] 4c2ea4836d08331e2417fff7ebb1177e88c61904c96e23eab3dc98953116bbef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7089e4bfd931e6266212e743758538ccde7df5fc0fc4a997d8d4568926c2fcf5
[INFO] running `Command { std: "docker" "start" "-a" "7089e4bfd931e6266212e743758538ccde7df5fc0fc4a997d8d4568926c2fcf5", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.43
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling unicode-ident v1.0.4
[INFO] [stderr]    Compiling syn v1.0.100
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling serde_derive v1.0.144
[INFO] [stderr]    Compiling serde v1.0.144
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.83
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling bumpalo v3.11.0
[INFO] [stderr]    Compiling once_cell v1.15.0
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling wasm-bindgen v0.2.83
[INFO] [stderr]    Compiling serde_json v1.0.85
[INFO] [stderr]    Compiling itoa v1.0.3
[INFO] [stderr]    Compiling ryu v1.0.11
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.83
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.83
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.83
[INFO] [stderr]    Compiling num-complex v0.4.2
[INFO] [stderr]    Compiling num v0.4.0
[INFO] [stderr]    Compiling calculator-2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `iter::Peekable`
[INFO] [stdout]  --> src/lib.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{iter::Peekable, collections::{HashMap, HashSet}};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsCast`
[INFO] [stdout]  --> src/lib.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use wasm_bindgen::{prelude::*, JsCast};
[INFO] [stdout]   |                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tokenizer`
[INFO] [stdout]   --> src/ast.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use crate::tokenizer::{Tokenizer, Token};
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Peekable`
[INFO] [stdout]   --> src/ast.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     use std::iter::Peekable;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/eval.rs:1:34
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::{HashMap, HashSet}, fmt::Display};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SerializeSeq`, `SerializeTuple`, and `Serializer`
[INFO] [stdout]  --> src/eval.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::{Serialize, Serializer, ser::{SerializeTuple, SerializeSeq}, Deserialize};
[INFO] [stdout]   |                        ^^^^^^^^^^        ^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokenizer::Tokenizer`
[INFO] [stdout]  --> src/eval.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{ast::Node, tokenizer::Tokenizer};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/value/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/eval.rs:139:33
[INFO] [stdout]     |
[INFO] [stdout] 139 |             Value::Func(params, expr) => {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class`
[INFO] [stdout]    --> src/eval.rs:255:19
[INFO] [stdout]     |
[INFO] [stdout] 255 |     pub fn opaque(class: Class) -> Expr {
[INFO] [stdout]     |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn add(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn mul(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn div(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn dot(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]   --> src/lib.rs:65:26
[INFO] [stdout]    |
[INFO] [stdout] 65 |             for (ident, (idx, node)) in assignments.iter() {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `height` is never used
[INFO] [stdout]   --> src/ast.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Matrix {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 23 |     pub fn height(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `combine` is never used
[INFO] [stdout]   --> src/eval.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Class {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 24 |     pub fn combine(&self, rhs: &Class, op: char) -> Class {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `combine` is never used
[INFO] [stdout]   --> src/eval.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 92 | impl NumClass {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 93 |     /** Returns the result type when you combine two numbers */
[INFO] [stdout] 94 |     pub fn combine(self, b: NumClass) -> NumClass {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `abs`, `add`, `mul`, `div`, and `dot` are never used
[INFO] [stdout]   --> src/value/mod.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub trait Value: Serialize {
[INFO] [stdout]    |           ----- methods in this trait
[INFO] [stdout] 10 |     fn abs(&self) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 11 |     fn add(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 12 |     fn mul(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 13 |     fn div(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 14 |     fn dot(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Matrix` is never constructed
[INFO] [stdout]   --> src/value/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum Any {
[INFO] [stdout]    |          --- variant in this enum
[INFO] [stdout] 18 |     Num(num::Num),
[INFO] [stdout] 19 |     Matrix(Matrix)
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Int` is never constructed
[INFO] [stdout]   --> src/value/num.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub enum Num { 
[INFO] [stdout]    |          --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     Int(BigInt)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Num` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.51s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.83
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "7089e4bfd931e6266212e743758538ccde7df5fc0fc4a997d8d4568926c2fcf5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7089e4bfd931e6266212e743758538ccde7df5fc0fc4a997d8d4568926c2fcf5", kill_on_drop: false }`
[INFO] [stdout] 7089e4bfd931e6266212e743758538ccde7df5fc0fc4a997d8d4568926c2fcf5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6c1cd3ad8b1ed1ab913e4018f816ff3a41f16488b0481f46343e85f473f64f59
[INFO] running `Command { std: "docker" "start" "-a" "6c1cd3ad8b1ed1ab913e4018f816ff3a41f16488b0481f46343e85f473f64f59", kill_on_drop: false }`
[INFO] [stderr]    Compiling calculator-2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `iter::Peekable`
[INFO] [stdout]  --> src/lib.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{iter::Peekable, collections::{HashMap, HashSet}};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsCast`
[INFO] [stdout]  --> src/lib.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use wasm_bindgen::{prelude::*, JsCast};
[INFO] [stdout]   |                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tokenizer`
[INFO] [stdout]   --> src/ast.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use crate::tokenizer::{Tokenizer, Token};
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Peekable`
[INFO] [stdout]   --> src/ast.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     use std::iter::Peekable;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TokenListRef`
[INFO] [stdout]    --> src/ast.rs:386:21
[INFO] [stdout]     |
[INFO] [stdout] 386 |         use super::{TokenListRef, Cursor};
[INFO] [stdout]     |                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/eval.rs:1:34
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::{HashMap, HashSet}, fmt::Display};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SerializeSeq`, `SerializeTuple`, and `Serializer`
[INFO] [stdout]  --> src/eval.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::{Serialize, Serializer, ser::{SerializeTuple, SerializeSeq}, Deserialize};
[INFO] [stdout]   |                        ^^^^^^^^^^        ^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokenizer::Tokenizer`
[INFO] [stdout]  --> src/eval.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{ast::Node, tokenizer::Tokenizer};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/value/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tokenizer.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let mut tok = Tokenizer::new("#xaxaxa bc sin co");
[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: `matrix`
[INFO] [stdout]    --> src/ast.rs:395:17
[INFO] [stdout]     |
[INFO] [stdout] 395 |             let matrix = parse_matrix(&tokens, &mut cur).unwrap();
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_matrix`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/eval.rs:139:33
[INFO] [stdout]     |
[INFO] [stdout] 139 |             Value::Func(params, expr) => {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class`
[INFO] [stdout]    --> src/eval.rs:255:19
[INFO] [stdout]     |
[INFO] [stdout] 255 |     pub fn opaque(class: Class) -> Expr {
[INFO] [stdout]     |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn add(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn mul(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn div(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/value/mod.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn dot(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]   --> src/lib.rs:65:26
[INFO] [stdout]    |
[INFO] [stdout] 65 |             for (ident, (idx, node)) in assignments.iter() {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `height` is never used
[INFO] [stdout]   --> src/ast.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Matrix {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 23 |     pub fn height(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `combine` is never used
[INFO] [stdout]   --> src/eval.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Class {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 24 |     pub fn combine(&self, rhs: &Class, op: char) -> Class {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `combine` is never used
[INFO] [stdout]   --> src/eval.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 92 | impl NumClass {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 93 |     /** Returns the result type when you combine two numbers */
[INFO] [stdout] 94 |     pub fn combine(self, b: NumClass) -> NumClass {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `abs`, `add`, `mul`, `div`, and `dot` are never used
[INFO] [stdout]   --> src/value/mod.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub trait Value: Serialize {
[INFO] [stdout]    |           ----- methods in this trait
[INFO] [stdout] 10 |     fn abs(&self) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 11 |     fn add(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 12 |     fn mul(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 13 |     fn div(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 14 |     fn dot(&self, rhs: Any) -> Option<Any> { None }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Matrix` is never constructed
[INFO] [stdout]   --> src/value/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum Any {
[INFO] [stdout]    |          --- variant in this enum
[INFO] [stdout] 18 |     Num(num::Num),
[INFO] [stdout] 19 |     Matrix(Matrix)
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Int` is never constructed
[INFO] [stdout]   --> src/value/num.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub enum Num { 
[INFO] [stdout]    |          --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     Int(BigInt)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Num` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.87s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.83
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "6c1cd3ad8b1ed1ab913e4018f816ff3a41f16488b0481f46343e85f473f64f59", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6c1cd3ad8b1ed1ab913e4018f816ff3a41f16488b0481f46343e85f473f64f59", kill_on_drop: false }`
[INFO] [stdout] 6c1cd3ad8b1ed1ab913e4018f816ff3a41f16488b0481f46343e85f473f64f59
