[INFO] cloning repository https://github.com/cyccro/math-graph [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cyccro/math-graph" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcyccro%2Fmath-graph", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcyccro%2Fmath-graph'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7a3c4f20919c703c90daafd188584a12384252a5 [INFO] checking cyccro/math-graph/7a3c4f20919c703c90daafd188584a12384252a5 against master#b2728d5426bab1d8c39709768c7e22b7f66dde5d for pr-135852 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcyccro%2Fmath-graph" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/cyccro/math-graph on toolchain b2728d5426bab1d8c39709768c7e22b7f66dde5d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b2728d5426bab1d8c39709768c7e22b7f66dde5d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/cyccro/math-graph [INFO] finished tweaking git repo https://github.com/cyccro/math-graph [INFO] tweaked toml for git repo https://github.com/cyccro/math-graph written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/cyccro/math-graph 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" "+b2728d5426bab1d8c39709768c7e22b7f66dde5d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c80049f3b88b82089a44e0f06d0d6029d44b96b7257e55a1cd63dbc9f4c33334" "/opt/rustwide/cargo-home/bin/cargo" "+b2728d5426bab1d8c39709768c7e22b7f66dde5d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2d36fad43d7274a31ee8ad6069f21933c163d4edd9fdabae0f84713325eb0988 [INFO] running `Command { std: "docker" "start" "-a" "2d36fad43d7274a31ee8ad6069f21933c163d4edd9fdabae0f84713325eb0988", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2d36fad43d7274a31ee8ad6069f21933c163d4edd9fdabae0f84713325eb0988", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2d36fad43d7274a31ee8ad6069f21933c163d4edd9fdabae0f84713325eb0988", kill_on_drop: false }` [INFO] [stdout] 2d36fad43d7274a31ee8ad6069f21933c163d4edd9fdabae0f84713325eb0988 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c80049f3b88b82089a44e0f06d0d6029d44b96b7257e55a1cd63dbc9f4c33334" "/opt/rustwide/cargo-home/bin/cargo" "+b2728d5426bab1d8c39709768c7e22b7f66dde5d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 118d275a3b5eac3bc589bbbd53ffdad1ee0c697ab64b750c52f24ee77f392f17 [INFO] running `Command { std: "docker" "start" "-a" "118d275a3b5eac3bc589bbbd53ffdad1ee0c697ab64b750c52f24ee77f392f17", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.204 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling target-lexicon v0.12.15 [INFO] [stderr] Compiling winnow v0.6.16 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling version-compare v0.2.0 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling thiserror v1.0.63 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking pin-project-lite v0.2.14 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Compiling gio v0.20.0 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Compiling cfg-expr v0.15.8 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling syn v2.0.72 [INFO] [stderr] Compiling field-offset v0.3.6 [INFO] [stderr] Compiling toml_datetime v0.6.7 [INFO] [stderr] Compiling serde_spanned v0.6.7 [INFO] [stderr] Compiling toml_edit v0.22.17 [INFO] [stderr] Compiling toml_edit v0.21.1 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling toml v0.8.16 [INFO] [stderr] Compiling proc-macro-crate v3.1.0 [INFO] [stderr] Compiling glib-macros v0.20.0 [INFO] [stderr] Compiling gtk4-macros v0.9.0 [INFO] [stderr] Compiling system-deps v7.0.1 [INFO] [stderr] Compiling glib-sys v0.20.0 [INFO] [stderr] Compiling gobject-sys v0.20.0 [INFO] [stderr] Compiling gio-sys v0.20.0 [INFO] [stderr] Compiling pango-sys v0.20.0 [INFO] [stderr] Compiling gdk-pixbuf-sys v0.20.0 [INFO] [stderr] Compiling cairo-sys-rs v0.20.0 [INFO] [stderr] Compiling gdk4-sys v0.9.0 [INFO] [stderr] Compiling graphene-sys v0.20.0 [INFO] [stderr] Compiling gsk4-sys v0.9.0 [INFO] [stderr] Compiling gtk4-sys v0.9.0 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking glib v0.20.0 [INFO] [stderr] Checking cairo-rs v0.20.0 [INFO] [stderr] Checking graphene-rs v0.20.0 [INFO] [stderr] Checking gdk-pixbuf v0.20.0 [INFO] [stderr] Checking pango v0.20.0 [INFO] [stderr] Checking gdk4 v0.9.0 [INFO] [stderr] Checking gsk4 v0.9.0 [INFO] [stderr] Checking gtk4 v0.9.0 [INFO] [stderr] Checking desmos_copy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: type `draw::Line` is more private than the item `draw::Pencil::<'a>::draw_points` [INFO] [stdout] --> src/draw.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn draw_points(&self, points: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `draw::Pencil::<'a>::draw_points` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `draw::Line` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/draw.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | struct Line(Vec2, Vec2, Rgb); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_numbers` is never used [INFO] [stdout] --> src/draw.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Line { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn from_numbers(x: f64, y: f64, xx: f64, yy: f64, r: f64, g: f64, b: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `width`, `height`, and `draw_points` are never used [INFO] [stdout] --> src/draw.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl<'a> Pencil<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 27 | pub fn width(&self) -> f64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn height(&self) -> f64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn draw_points(&self, points: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `content` is never used [INFO] [stdout] --> src/inputs.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Input { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn content(&self) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `content` is never used [INFO] [stdout] --> src/inputs.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl FormulaInput { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn content(&self) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `inputs` is never read [INFO] [stdout] --> src/inputs.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct Inputs<'a> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 64 | inputs: Vec<&'a FormulaInput>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `contents` and `append` are never used [INFO] [stdout] --> src/inputs.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl<'a> Inputs<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn contents(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn append(&mut self, input: &'a FormulaInput) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Evaluator` is never constructed [INFO] [stdout] --> src/math/evaluator.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Evaluator { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/math/evaluator.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 10 | impl Evaluator { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 11 | const ERROR_NUM: f64 = -1.234567890; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | pub fn new(ast: Expr) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn eval_asts(asts: Vec) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn eval_from_txt(content: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn save_func(&mut self, fname: String, body: Box) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn save_fn(&mut self, f: Expr) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn save_fns(&mut self, fns: Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn save_var(&mut self, varname: String, expr: Expr) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn evaluate(&mut self, ast: Option, identifier_num: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn eval_func(&mut self, fname: String, param: Expr, identifier_num: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | fn eval(&mut self, ast: Expr, identifier_num: f64) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ADD`, `SUB`, `MUL`, `DIV`, `REM`, and `POW` are never constructed [INFO] [stdout] --> src/math/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum MathOp { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 3 | ADD, [INFO] [stdout] | ^^^ [INFO] [stdout] 4 | SUB, [INFO] [stdout] | ^^^ [INFO] [stdout] 5 | MUL, [INFO] [stdout] | ^^^ [INFO] [stdout] 6 | DIV, [INFO] [stdout] | ^^^ [INFO] [stdout] 7 | REM, [INFO] [stdout] | ^^^ [INFO] [stdout] 8 | POW, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MathOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/math/parser.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum MathToken { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 13 | LeftParen, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | RightParen, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 15 | Eq, [INFO] [stdout] | ^^ [INFO] [stdout] 16 | SemiColon, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 17 | VarDecl, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | Alpha(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | Num(String), [INFO] [stdout] | ^^^ [INFO] [stdout] 20 | Operator(MathOp), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 21 | EOF, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MathToken` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_for_multiplication` is never used [INFO] [stdout] --> src/math/parser.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn check_for_multiplication(current: &u8, next: &u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tokenize` is never used [INFO] [stdout] --> src/math/parser.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn tokenize(content: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Parser` is never constructed [INFO] [stdout] --> src/math/parser.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 89 | pub struct Parser { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Error` is never constructed [INFO] [stdout] --> src/math/parser.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Error(String); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Expr` is never used [INFO] [stdout] --> src/math/parser.rs:96:10 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum Expr { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/math/parser.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 110 | impl Parser { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 111 | pub fn new(tokens: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn peak(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn eat(&mut self) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn eat_n(&mut self, n: usize) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | fn next(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn expect(&mut self, tk: MathToken) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn parse(&mut self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | fn parse_func(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | fn parse_expr(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | fn parse_pow(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | fn parse_multiplicative(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | fn parse_additive(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | fn parse_primary(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_ast` is never used [INFO] [stdout] --> src/math/parser.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 298 | pub fn gen_ast(content: &str) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `BLACK`, `black`, and `from_color` are never used [INFO] [stdout] --> src/rgb.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 7 | impl Rgb { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 8 | pub const WHITE: Rgb = Rgb(1.0, 1.0, 1.0); [INFO] [stdout] 9 | pub const BLACK: Rgb = Rgb(0.0, 0.0, 0.0); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | pub const RED: Rgb = Rgb(1.0, 0.0, 0.0); [INFO] [stdout] 11 | pub fn black() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn from_color(color: i64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `set`, `dot`, `mag_square`, `mag`, and `splat` are never used [INFO] [stdout] --> src/vec2.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 3 | impl Vec2 { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn set(&mut self, v: (f64, f64)) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn dot(&self, other: Self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn mag_square(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn mag(&self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn splat(n: f64) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/draw.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pencil.draw_line(&self.0, &self.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 22 | let _ = pencil.draw_line(&self.0, &self.1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/draw.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | self.0.stroke(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = self.0.stroke(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `draw::Line` is more private than the item `draw::Pencil::<'a>::draw_points` [INFO] [stdout] --> src/draw.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn draw_points(&self, points: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `draw::Pencil::<'a>::draw_points` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `draw::Line` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/draw.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | struct Line(Vec2, Vec2, Rgb); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_numbers` is never used [INFO] [stdout] --> src/draw.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Line { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn from_numbers(x: f64, y: f64, xx: f64, yy: f64, r: f64, g: f64, b: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `width`, `height`, and `draw_points` are never used [INFO] [stdout] --> src/draw.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl<'a> Pencil<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 27 | pub fn width(&self) -> f64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn height(&self) -> f64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn draw_points(&self, points: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `content` is never used [INFO] [stdout] --> src/inputs.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Input { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn content(&self) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `content` is never used [INFO] [stdout] --> src/inputs.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl FormulaInput { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn content(&self) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `inputs` is never read [INFO] [stdout] --> src/inputs.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct Inputs<'a> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 64 | inputs: Vec<&'a FormulaInput>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `contents` and `append` are never used [INFO] [stdout] --> src/inputs.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl<'a> Inputs<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn contents(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn append(&mut self, input: &'a FormulaInput) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Evaluator` is never constructed [INFO] [stdout] --> src/math/evaluator.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Evaluator { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/math/evaluator.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 10 | impl Evaluator { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 11 | const ERROR_NUM: f64 = -1.234567890; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | pub fn new(ast: Expr) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn eval_asts(asts: Vec) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn eval_from_txt(content: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn save_func(&mut self, fname: String, body: Box) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn save_fn(&mut self, f: Expr) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn save_fns(&mut self, fns: Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn save_var(&mut self, varname: String, expr: Expr) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn evaluate(&mut self, ast: Option, identifier_num: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn eval_func(&mut self, fname: String, param: Expr, identifier_num: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | fn eval(&mut self, ast: Expr, identifier_num: f64) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ADD`, `SUB`, `MUL`, `DIV`, `REM`, and `POW` are never constructed [INFO] [stdout] --> src/math/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum MathOp { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 3 | ADD, [INFO] [stdout] | ^^^ [INFO] [stdout] 4 | SUB, [INFO] [stdout] | ^^^ [INFO] [stdout] 5 | MUL, [INFO] [stdout] | ^^^ [INFO] [stdout] 6 | DIV, [INFO] [stdout] | ^^^ [INFO] [stdout] 7 | REM, [INFO] [stdout] | ^^^ [INFO] [stdout] 8 | POW, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MathOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/math/parser.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum MathToken { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 13 | LeftParen, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | RightParen, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 15 | Eq, [INFO] [stdout] | ^^ [INFO] [stdout] 16 | SemiColon, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 17 | VarDecl, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | Alpha(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | Num(String), [INFO] [stdout] | ^^^ [INFO] [stdout] 20 | Operator(MathOp), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 21 | EOF, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MathToken` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_for_multiplication` is never used [INFO] [stdout] --> src/math/parser.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn check_for_multiplication(current: &u8, next: &u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tokenize` is never used [INFO] [stdout] --> src/math/parser.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn tokenize(content: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Parser` is never constructed [INFO] [stdout] --> src/math/parser.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 89 | pub struct Parser { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Error` is never constructed [INFO] [stdout] --> src/math/parser.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Error(String); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Expr` is never used [INFO] [stdout] --> src/math/parser.rs:96:10 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum Expr { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/math/parser.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 110 | impl Parser { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 111 | pub fn new(tokens: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn peak(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn eat(&mut self) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn eat_n(&mut self, n: usize) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | fn next(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn expect(&mut self, tk: MathToken) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn parse(&mut self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | fn parse_func(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | fn parse_expr(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | fn parse_pow(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | fn parse_multiplicative(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | fn parse_additive(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | fn parse_primary(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_ast` is never used [INFO] [stdout] --> src/math/parser.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 298 | pub fn gen_ast(content: &str) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `BLACK`, `black`, and `from_color` are never used [INFO] [stdout] --> src/rgb.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 7 | impl Rgb { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 8 | pub const WHITE: Rgb = Rgb(1.0, 1.0, 1.0); [INFO] [stdout] 9 | pub const BLACK: Rgb = Rgb(0.0, 0.0, 0.0); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | pub const RED: Rgb = Rgb(1.0, 0.0, 0.0); [INFO] [stdout] 11 | pub fn black() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn from_color(color: i64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `set`, `dot`, `mag_square`, `mag`, and `splat` are never used [INFO] [stdout] --> src/vec2.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 3 | impl Vec2 { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn set(&mut self, v: (f64, f64)) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn dot(&self, other: Self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn mag_square(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn mag(&self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn splat(n: f64) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/draw.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pencil.draw_line(&self.0, &self.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 22 | let _ = pencil.draw_line(&self.0, &self.1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/draw.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | self.0.stroke(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = self.0.stroke(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 14s [INFO] running `Command { std: "docker" "inspect" "118d275a3b5eac3bc589bbbd53ffdad1ee0c697ab64b750c52f24ee77f392f17", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "118d275a3b5eac3bc589bbbd53ffdad1ee0c697ab64b750c52f24ee77f392f17", kill_on_drop: false }` [INFO] [stdout] 118d275a3b5eac3bc589bbbd53ffdad1ee0c697ab64b750c52f24ee77f392f17