[INFO] cloning repository https://github.com/Jardynq/imaginary-playpen [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jardynq/imaginary-playpen" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJardynq%2Fimaginary-playpen", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJardynq%2Fimaginary-playpen'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 67be93a65516429aa148b8bb9626488afac0486c [INFO] checking Jardynq/imaginary-playpen/67be93a65516429aa148b8bb9626488afac0486c against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJardynq%2Fimaginary-playpen" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Jardynq/imaginary-playpen on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Jardynq/imaginary-playpen [INFO] finished tweaking git repo https://github.com/Jardynq/imaginary-playpen [INFO] tweaked toml for git repo https://github.com/Jardynq/imaginary-playpen written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Jardynq/imaginary-playpen 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: Found `debug_assertions` in `target.'cfg(...)'.dependencies`. This value is not supported for selecting dependencies and will not work as expected. To learn more visit https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#platform-specific-dependencies [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-test v0.3.18 [INFO] [stderr] Downloaded syn v1.0.45 [INFO] [stderr] Downloaded console_log v0.2.0 [INFO] [stderr] Downloaded pin-project-internal v0.4.23 [INFO] [stderr] Downloaded pin-project v0.4.23 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.18 [INFO] [stderr] Downloaded proc-macro-hack v0.5.18 [INFO] [stderr] Downloaded wasm-bindgen-test-macro v0.3.18 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e734864b81870018594a6c76af84f9745154b060e5c07827714b40720dc841ad [INFO] running `Command { std: "docker" "start" "-a" "e734864b81870018594a6c76af84f9745154b060e5c07827714b40720dc841ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e734864b81870018594a6c76af84f9745154b060e5c07827714b40720dc841ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e734864b81870018594a6c76af84f9745154b060e5c07827714b40720dc841ad", kill_on_drop: false }` [INFO] [stdout] e734864b81870018594a6c76af84f9745154b060e5c07827714b40720dc841ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cfd1b5b295d828c6e8038a7996fcb0c9c1a9301594cb6d59ee41a4f6b461590c [INFO] running `Command { std: "docker" "start" "-a" "cfd1b5b295d828c6e8038a7996fcb0c9c1a9301594cb6d59ee41a4f6b461590c", kill_on_drop: false }` [INFO] [stderr] warning: Found `debug_assertions` in `target.'cfg(...)'.dependencies`. This value is not supported for selecting dependencies and will not work as expected. To learn more visit https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#platform-specific-dependencies [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling syn v1.0.45 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.68 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling bumpalo v3.4.0 [INFO] [stderr] Compiling wasm-bindgen v0.2.68 [INFO] [stderr] Compiling pin-project-internal v0.4.23 [INFO] [stderr] Compiling proc-macro-nested v0.1.6 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Checking futures-core v0.3.5 [INFO] [stderr] Compiling proc-macro-hack v0.5.18 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Compiling serde_derive v1.0.117 [INFO] [stderr] Checking once_cell v1.4.1 [INFO] [stderr] Compiling serde v1.0.117 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Checking scoped-tls v1.0.0 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling wasm-bindgen-test-macro v0.3.18 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.68 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.68 [INFO] [stderr] Compiling futures-macro v0.3.5 [INFO] [stderr] Compiling derive_more v0.99.11 [INFO] [stderr] Compiling macro_derive v0.1.0 (/opt/rustwide/workdir/macro_derive) [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.68 [INFO] [stderr] Checking pin-project v0.4.23 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking js-sys v0.3.45 [INFO] [stderr] Checking console_error_panic_hook v0.1.6 [INFO] [stderr] Checking futures-executor v0.3.5 [INFO] [stderr] Checking web-sys v0.3.45 [INFO] [stderr] Checking wasm-bindgen-futures v0.4.18 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking wasm-bindgen-test v0.3.18 [INFO] [stderr] Checking serde_bytes v0.11.5 [INFO] [stderr] Checking gloo-events v0.1.1 [INFO] [stderr] Checking gloo-console-timer v0.1.0 [INFO] [stderr] Checking gloo-timers v0.2.1 [INFO] [stderr] Checking console_log v0.2.0 [INFO] [stderr] Checking gloo-file v0.1.0 [INFO] [stderr] Checking gloo v0.2.1 [INFO] [stderr] Checking imaginary-playpen v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused macro definition: `log_info` [INFO] [stdout] --> src/utils.rs:75:14 [INFO] [stdout] | [INFO] [stdout] 75 | macro_rules! log_info { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug`, `error`, and `trace` [INFO] [stdout] --> src/input.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{ trace, debug, info, warn, error }; [INFO] [stdout] | ^^^^^ ^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `wasm_bindgen::prelude::*` [INFO] [stdout] --> src/input.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use wasm_bindgen::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `console` [INFO] [stdout] --> src/input.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | console, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `complex::*` [INFO] [stdout] --> src/math/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use complex::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `interpreter::*` [INFO] [stdout] --> src/math/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use interpreter::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug`, `info`, and `trace` [INFO] [stdout] --> src/javascript.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{ trace, debug, info, warn, error }; [INFO] [stdout] | ^^^^^ ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Element`, `HtmlElement`, and `Node` [INFO] [stdout] --> src/javascript.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | Window, Document, Element, HtmlElement, Node, [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macro_derive::*` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use macro_derive::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::trace` [INFO] [stdout] --> src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use log::trace; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Document`, `Element`, `HtmlCanvasElement`, `HtmlDivElement`, `HtmlElement`, `HtmlParagraphElement`, `Navigator`, `Node`, and `Window` [INFO] [stdout] --> src/lib.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | Window, Document, Element, HtmlElement, Node, [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ ^^^^ [INFO] [stdout] 28 | Navigator, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | HtmlDivElement, HtmlParagraphElement, HtmlImageElement, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | HtmlCanvasElement, HtmlVideoElement, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:289:28 [INFO] [stdout] | [INFO] [stdout] 289 | let time = (js.time_now() / 1000.0); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 289 - let time = (js.time_now() / 1000.0); [INFO] [stdout] 289 + let time = js.time_now() / 1000.0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `log_info` [INFO] [stdout] --> src/utils.rs:75:14 [INFO] [stdout] | [INFO] [stdout] 75 | macro_rules! log_info { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug`, `error`, and `trace` [INFO] [stdout] --> src/input.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{ trace, debug, info, warn, error }; [INFO] [stdout] | ^^^^^ ^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `wasm_bindgen::prelude::*` [INFO] [stdout] --> src/input.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use wasm_bindgen::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `console` [INFO] [stdout] --> src/input.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | console, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `complex::*` [INFO] [stdout] --> src/math/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use complex::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `interpreter::*` [INFO] [stdout] --> src/math/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use interpreter::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug`, `info`, and `trace` [INFO] [stdout] --> src/javascript.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{ trace, debug, info, warn, error }; [INFO] [stdout] | ^^^^^ ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Element`, `HtmlElement`, and `Node` [INFO] [stdout] --> src/javascript.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | Window, Document, Element, HtmlElement, Node, [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macro_derive::*` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use macro_derive::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::trace` [INFO] [stdout] --> src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use log::trace; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Document`, `Element`, `HtmlCanvasElement`, `HtmlDivElement`, `HtmlElement`, `HtmlParagraphElement`, `Navigator`, `Node`, and `Window` [INFO] [stdout] --> src/lib.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | Window, Document, Element, HtmlElement, Node, [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ ^^^^ [INFO] [stdout] 28 | Navigator, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | HtmlDivElement, HtmlParagraphElement, HtmlImageElement, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | HtmlCanvasElement, HtmlVideoElement, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:289:28 [INFO] [stdout] | [INFO] [stdout] 289 | let time = (js.time_now() / 1000.0); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 289 - let time = (js.time_now() / 1000.0); [INFO] [stdout] 289 + let time = js.time_now() / 1000.0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/canvas.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn set_size(&self, size: (Option, Option)) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/canvas.rs:22:19 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn render(renderer: Option>) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/canvas.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn set_size(&self, size: (Option, Option)) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/canvas.rs:22:19 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn render(renderer: Option>) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 154 | Syntax::Variable(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/math/interpreter.rs:160:30 [INFO] [stdout] | [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 154 | Syntax::Variable(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/math/interpreter.rs:160:30 [INFO] [stdout] | [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut js = Javascript::default(); [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: `print_webgl_error` [INFO] [stdout] --> src/lib.rs:130:17 [INFO] [stdout] | [INFO] [stdout] 130 | let print_webgl_error = |context: &WebGl2| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_print_webgl_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `video_width` [INFO] [stdout] --> src/lib.rs:191:22 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_video_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `video_height` [INFO] [stdout] --> src/lib.rs:191:39 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_video_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `freeze_x` [INFO] [stdout] --> src/lib.rs:262:22 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_freeze_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `freeze_y` [INFO] [stdout] --> src/lib.rs:262:36 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_freeze_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `freeze_state` [INFO] [stdout] --> src/lib.rs:263:21 [INFO] [stdout] | [INFO] [stdout] 263 | let mut freeze_state = 0; // 0 none, 1 freeze x, 2 freeze y [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_freeze_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/lib.rs:223:75 [INFO] [stdout] | [INFO] [stdout] 223 | ... let temp_error = Closure::wrap(Box::new(move |error: JsValue| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `req_token` [INFO] [stdout] --> src/lib.rs:279:21 [INFO] [stdout] | [INFO] [stdout] 279 | let req_token = req_anim_frame(self_loop.borrow().as_ref().unwrap()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_req_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value captured by `delta_time` is never read [INFO] [stdout] --> src/lib.rs:281:17 [INFO] [stdout] | [INFO] [stdout] 281 | delta_time = (current_frametime - last_frametime) / 1000.0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: did you mean to capture by reference instead? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elapsed` [INFO] [stdout] --> src/lib.rs:278:73 [INFO] [stdout] | [INFO] [stdout] 278 | *main_loop.borrow_mut() = Some(Closure::wrap(Box::new(move |elapsed: f64| { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:191:18 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:191:35 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:262:18 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:262:32 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:263:17 [INFO] [stdout] | [INFO] [stdout] 263 | let mut freeze_state = 0; // 0 none, 1 freeze x, 2 freeze y [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:553:22 [INFO] [stdout] | [INFO] [stdout] 553 | pub fn terminate(mut self) { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:575:23 [INFO] [stdout] | [INFO] [stdout] 575 | Err(error) => unsafe { console::error_1(&JsValue::from_str(&error.to_string())) }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/lib.rs:716:22 [INFO] [stdout] | [INFO] [stdout] 716 | Some(error) => error!("{}", expr.pretty_error()), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut js = Javascript::default(); [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/lib.rs:722:9 [INFO] [stdout] | [INFO] [stdout] 722 | let mut nodes = expr.serialize::(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `print_webgl_error` [INFO] [stdout] --> src/lib.rs:130:17 [INFO] [stdout] | [INFO] [stdout] 130 | let print_webgl_error = |context: &WebGl2| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_print_webgl_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `video_width` [INFO] [stdout] --> src/lib.rs:191:22 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_video_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `video_height` [INFO] [stdout] --> src/lib.rs:191:39 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_video_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `freeze_x` [INFO] [stdout] --> src/lib.rs:262:22 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_freeze_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `freeze_y` [INFO] [stdout] --> src/lib.rs:262:36 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_freeze_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `freeze_state` [INFO] [stdout] --> src/lib.rs:263:21 [INFO] [stdout] | [INFO] [stdout] 263 | let mut freeze_state = 0; // 0 none, 1 freeze x, 2 freeze y [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_freeze_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `custom_framerate` is never read [INFO] [stdout] --> src/lib.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct Application { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 55 | custom_framerate: (bool, f64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Right`, `Middle`, `Back`, and `Forward` are never constructed [INFO] [stdout] --> src/input.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub enum MouseButton { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 22 | Left = 0, [INFO] [stdout] 23 | Right = 1, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 24 | Middle = 2, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 25 | Back = 3, [INFO] [stdout] | ^^^^ [INFO] [stdout] 26 | Forward = 4, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MouseButton` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `temp` is never read [INFO] [stdout] --> src/input.rs:93:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Handler { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 93 | temp: EventHandler, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unhook` is never used [INFO] [stdout] --> src/input.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 110 | impl Handler { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn unhook(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/input.rs:331:12 [INFO] [stdout] | [INFO] [stdout] 330 | impl Handler { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 331 | pub fn pointer(&self) -> (f64, f64) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn pointer_delta(&self) -> (f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 347 | pub fn wheel(&self) -> (f64, f64, f64) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn wheel_delta(&self) -> (f64, f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn key(&self, code: &str) -> State { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 369 | pub fn vkey_active(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 384 | pub fn vkey_inactive(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 387 | pub fn vkey_pressed(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | pub fn vkey_held(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 393 | pub fn vkey_released(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 398 | pub fn button(&self, button: MouseButton) -> State { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 410 | pub fn vbutton_active(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | pub fn vbutton_inactive(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 428 | pub fn vbutton_pressed(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | pub fn vbutton_held(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn vbutton_released(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `target`, `inner`, and `listeners` are never read [INFO] [stdout] --> src/input.rs:444:5 [INFO] [stdout] | [INFO] [stdout] 443 | struct EventHandler { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 444 | target: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 445 | inner: Arc, bool)>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 446 | listeners: Vec>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EventHandler` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/input.rs:449:8 [INFO] [stdout] | [INFO] [stdout] 448 | impl EventHandler { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 449 | fn new(target: &EventTarget) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 457 | fn hook(&mut self, event_type: &str, forget: bool) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 480 | fn unhook(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 486 | fn unhook_all(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 490 | fn handle(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | fn get + JsCast>(&self) -> (Option, bool) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 503 | fn get_target(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/shader.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl Shader { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/shader.rs:223:12 [INFO] [stdout] | [INFO] [stdout] 203 | impl VertexArray { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 223 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/shader.rs:310:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl UniformBufferObject { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 310 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MappedBuffer` is never constructed [INFO] [stdout] --> src/shader.rs:339:8 [INFO] [stdout] | [INFO] [stdout] 339 | struct MappedBuffer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Canvas` is never constructed [INFO] [stdout] --> src/canvas.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Canvas { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `set_size`, `render`, and `render_post` are never used [INFO] [stdout] --> src/canvas.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Canvas { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 14 | pub fn set_size(&self, size: (Option, Option)) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn render(renderer: Option>) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn render_post() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `real`, `imaginary`, `zero`, `infinity`, and `nan` are never used [INFO] [stdout] --> src/math/complex.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Complex { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn real(value: f64) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn imaginary(value: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn zero() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn infinity() -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn nan() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 35 | pub fn is_zero(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn is_nan(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn is_infinite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_finite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_normal(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn is_real(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn is_imaginary(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 60 | pub fn abs(&self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn arg(&self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn fract(self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn sign(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn dot(self, other: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn conjugate(self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn sqrt(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn exp(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn exp_m1(self) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn log(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn pow(self, exponent: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 150 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 151 | pub fn sin(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn asin(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn cos(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn acos(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn tan(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn atan(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn cot(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn acot(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn sec(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn asec(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn csc(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn acsc(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_string_phasor`, `to_string_polar`, and `to_string_exponential` are never used [INFO] [stdout] --> src/math/complex.rs:400:12 [INFO] [stdout] | [INFO] [stdout] 399 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 400 | pub fn to_string_phasor(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 405 | pub fn to_string_polar(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 410 | pub fn to_string_exponential(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cos_m1` and `log_hypot` are never used [INFO] [stdout] --> src/math/extended.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub trait Extended { [INFO] [stdout] | -------- methods in this trait [INFO] [stdout] 2 | fn cos_m1(self) -> Self; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 3 | fn log_hypot(self, other: Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sanitize_input` is never used [INFO] [stdout] --> src/math/interpreter.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn sanitize_input(input: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None`, `Exit`, `Evaluate`, `SetVariable`, and `RemoveVariable` are never constructed [INFO] [stdout] --> src/math/interpreter.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum ReplCommand { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 23 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 24 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 25 | Evaluate, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 26 | SetVariable(String, Complex), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 27 | RemoveVariable(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReplCommand` 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: struct `Intepreter` is never constructed [INFO] [stdout] --> src/math/interpreter.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Intepreter { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/math/interpreter.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Intepreter { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 34 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn repl_handler Vec>(&mut self, handler: F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn repl(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn set_variable(&mut self, name: &str, value: Complex) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn evaluate(&self, expr: &Expression) -> Complex { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn evaluate_node_left(&self, node: &Node) -> Complex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn evaluate_node_right(&self, node: &Node) -> Complex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn evaluate_node(&self, node: &Node) -> Complex { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `empty` is never used [INFO] [stdout] --> src/math/parser.rs:479:12 [INFO] [stdout] | [INFO] [stdout] 451 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 479 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_valid` is never used [INFO] [stdout] --> src/math/parser.rs:568:12 [INFO] [stdout] | [INFO] [stdout] 534 | impl Expression { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 568 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `syntax`, `keyword`, and `value` are never read [INFO] [stdout] --> src/math/serializer.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct NodeData { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 32 | pub syntax: u16, // offset 6, size 2 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 33 | // Pack keyword identifier into hi [INFO] [stdout] 34 | pub keyword: u16, // offset 4, size 2 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 35 | [INFO] [stdout] 36 | pub value: (f32, f32), // offset 8, size 8 [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeData` 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: field `body` is never read [INFO] [stdout] --> src/javascript.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct Javascript { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | body: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Javascript` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `reset`, `get_canvas_bitmap`, and `get_canvas_webgl` are never used [INFO] [stdout] --> src/javascript.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl Javascript { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 29 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_canvas_bitmap(&mut self, query: &str) -> Option<(HtmlCanvasElement, ImageBitmapRenderingContext)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn get_canvas_webgl(&mut self, query: &str) -> Option<(HtmlCanvasElement, WebGlRenderingContext)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `body` is never used [INFO] [stdout] --> src/javascript.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 135 | impl Javascript { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn body(&mut self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | w_canvas.style().set_property("width", "400"); [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] 83 | let _ = w_canvas.style().set_property("width", "400"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | w_canvas.style().set_property("height", "400"); [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] 84 | let _ = w_canvas.style().set_property("height", "400"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Promise` that must be used [INFO] [stdout] --> src/lib.rs:227:29 [INFO] [stdout] | [INFO] [stdout] 227 | ... media.then(&temp_callback).catch(&temp_error); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 227 | let _ = media.then(&temp_callback).catch(&temp_error); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/lib.rs:223:75 [INFO] [stdout] | [INFO] [stdout] 223 | ... let temp_error = Closure::wrap(Box::new(move |error: JsValue| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `global_ubo` should have an upper case name [INFO] [stdout] --> src/lib.rs:702:12 [INFO] [stdout] | [INFO] [stdout] 702 | static mut global_ubo: Option> = None; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `GLOBAL_UBO` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `req_token` [INFO] [stdout] --> src/lib.rs:279:21 [INFO] [stdout] | [INFO] [stdout] 279 | let req_token = req_anim_frame(self_loop.borrow().as_ref().unwrap()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_req_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `global_nodes_count` should have an upper case name [INFO] [stdout] --> src/lib.rs:703:12 [INFO] [stdout] | [INFO] [stdout] 703 | static mut global_nodes_count: Option>> = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `GLOBAL_NODES_COUNT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value captured by `delta_time` is never read [INFO] [stdout] --> src/lib.rs:281:17 [INFO] [stdout] | [INFO] [stdout] 281 | delta_time = (current_frametime - last_frametime) / 1000.0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: did you mean to capture by reference instead? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `elapsed` [INFO] [stdout] --> src/lib.rs:278:73 [INFO] [stdout] | [INFO] [stdout] 278 | *main_loop.borrow_mut() = Some(Closure::wrap(Box::new(move |elapsed: f64| { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:191:18 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:191:35 [INFO] [stdout] | [INFO] [stdout] 191 | let (mut video_width, mut video_height) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:262:18 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:262:32 [INFO] [stdout] | [INFO] [stdout] 262 | let (mut freeze_x, mut freeze_y) = (0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:263:17 [INFO] [stdout] | [INFO] [stdout] 263 | let mut freeze_state = 0; // 0 none, 1 freeze x, 2 freeze y [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:553:22 [INFO] [stdout] | [INFO] [stdout] 553 | pub fn terminate(mut self) { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:575:23 [INFO] [stdout] | [INFO] [stdout] 575 | Err(error) => unsafe { console::error_1(&JsValue::from_str(&error.to_string())) }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/lib.rs:716:22 [INFO] [stdout] | [INFO] [stdout] 716 | Some(error) => error!("{}", expr.pretty_error()), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:722:9 [INFO] [stdout] | [INFO] [stdout] 722 | let mut nodes = expr.serialize::(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `custom_framerate` is never read [INFO] [stdout] --> src/lib.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct Application { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 55 | custom_framerate: (bool, f64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Right`, `Middle`, `Back`, and `Forward` are never constructed [INFO] [stdout] --> src/input.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub enum MouseButton { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 22 | Left = 0, [INFO] [stdout] 23 | Right = 1, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 24 | Middle = 2, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 25 | Back = 3, [INFO] [stdout] | ^^^^ [INFO] [stdout] 26 | Forward = 4, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MouseButton` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `temp` is never read [INFO] [stdout] --> src/input.rs:93:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Handler { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 93 | temp: EventHandler, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unhook` is never used [INFO] [stdout] --> src/input.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 110 | impl Handler { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn unhook(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/input.rs:331:12 [INFO] [stdout] | [INFO] [stdout] 330 | impl Handler { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 331 | pub fn pointer(&self) -> (f64, f64) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn pointer_delta(&self) -> (f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 347 | pub fn wheel(&self) -> (f64, f64, f64) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn wheel_delta(&self) -> (f64, f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn key(&self, code: &str) -> State { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 369 | pub fn vkey_active(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 384 | pub fn vkey_inactive(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 387 | pub fn vkey_pressed(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | pub fn vkey_held(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 393 | pub fn vkey_released(&self, code: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 398 | pub fn button(&self, button: MouseButton) -> State { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 410 | pub fn vbutton_active(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | pub fn vbutton_inactive(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 428 | pub fn vbutton_pressed(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | pub fn vbutton_held(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn vbutton_released(&self, button: MouseButton) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `target`, `inner`, and `listeners` are never read [INFO] [stdout] --> src/input.rs:444:5 [INFO] [stdout] | [INFO] [stdout] 443 | struct EventHandler { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 444 | target: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 445 | inner: Arc, bool)>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 446 | listeners: Vec>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EventHandler` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/input.rs:449:8 [INFO] [stdout] | [INFO] [stdout] 448 | impl EventHandler { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 449 | fn new(target: &EventTarget) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 457 | fn hook(&mut self, event_type: &str, forget: bool) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 480 | fn unhook(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 486 | fn unhook_all(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 490 | fn handle(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | fn get + JsCast>(&self) -> (Option, bool) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 503 | fn get_target(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/shader.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl Shader { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/shader.rs:223:12 [INFO] [stdout] | [INFO] [stdout] 203 | impl VertexArray { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 223 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/shader.rs:310:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl UniformBufferObject { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 310 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MappedBuffer` is never constructed [INFO] [stdout] --> src/shader.rs:339:8 [INFO] [stdout] | [INFO] [stdout] 339 | struct MappedBuffer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Canvas` is never constructed [INFO] [stdout] --> src/canvas.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Canvas { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `set_size`, `render`, and `render_post` are never used [INFO] [stdout] --> src/canvas.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Canvas { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 14 | pub fn set_size(&self, size: (Option, Option)) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn render(renderer: Option>) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn render_post() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `real`, `imaginary`, `zero`, `infinity`, and `nan` are never used [INFO] [stdout] --> src/math/complex.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Complex { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn real(value: f64) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn imaginary(value: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn zero() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn infinity() -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn nan() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 35 | pub fn is_zero(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn is_nan(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn is_infinite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_finite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_normal(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn is_real(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn is_imaginary(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 60 | pub fn abs(&self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn arg(&self) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn fract(self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn sign(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn dot(self, other: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn conjugate(self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn sqrt(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn exp(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn exp_m1(self) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn log(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn pow(self, exponent: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 150 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 151 | pub fn sin(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn asin(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn cos(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn acos(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn tan(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn atan(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn cot(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn acot(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn sec(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn asec(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn csc(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn acsc(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_string_phasor`, `to_string_polar`, and `to_string_exponential` are never used [INFO] [stdout] --> src/math/complex.rs:400:12 [INFO] [stdout] | [INFO] [stdout] 399 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 400 | pub fn to_string_phasor(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 405 | pub fn to_string_polar(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 410 | pub fn to_string_exponential(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cos_m1` and `log_hypot` are never used [INFO] [stdout] --> src/math/extended.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub trait Extended { [INFO] [stdout] | -------- methods in this trait [INFO] [stdout] 2 | fn cos_m1(self) -> Self; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 3 | fn log_hypot(self, other: Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sanitize_input` is never used [INFO] [stdout] --> src/math/interpreter.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn sanitize_input(input: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None`, `Exit`, `Evaluate`, `SetVariable`, and `RemoveVariable` are never constructed [INFO] [stdout] --> src/math/interpreter.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum ReplCommand { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 23 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 24 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 25 | Evaluate, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 26 | SetVariable(String, Complex), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 27 | RemoveVariable(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReplCommand` 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: struct `Intepreter` is never constructed [INFO] [stdout] --> src/math/interpreter.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Intepreter { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/math/interpreter.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Intepreter { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 34 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn repl_handler Vec>(&mut self, handler: F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn repl(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn set_variable(&mut self, name: &str, value: Complex) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn evaluate(&self, expr: &Expression) -> Complex { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn evaluate_node_left(&self, node: &Node) -> Complex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn evaluate_node_right(&self, node: &Node) -> Complex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | fn evaluate_node(&self, node: &Node) -> Complex { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `empty` is never used [INFO] [stdout] --> src/math/parser.rs:479:12 [INFO] [stdout] | [INFO] [stdout] 451 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 479 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_valid` is never used [INFO] [stdout] --> src/math/parser.rs:568:12 [INFO] [stdout] | [INFO] [stdout] 534 | impl Expression { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 568 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `syntax`, `keyword`, and `value` are never read [INFO] [stdout] --> src/math/serializer.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct NodeData { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 32 | pub syntax: u16, // offset 6, size 2 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 33 | // Pack keyword identifier into hi [INFO] [stdout] 34 | pub keyword: u16, // offset 4, size 2 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 35 | [INFO] [stdout] 36 | pub value: (f32, f32), // offset 8, size 8 [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeData` 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: field `body` is never read [INFO] [stdout] --> src/javascript.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct Javascript { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | body: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Javascript` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 72 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `reset`, `get_canvas_bitmap`, and `get_canvas_webgl` are never used [INFO] [stdout] --> src/javascript.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl Javascript { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 29 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_canvas_bitmap(&mut self, query: &str) -> Option<(HtmlCanvasElement, ImageBitmapRenderingContext)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn get_canvas_webgl(&mut self, query: &str) -> Option<(HtmlCanvasElement, WebGlRenderingContext)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `body` is never used [INFO] [stdout] --> src/javascript.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 135 | impl Javascript { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn body(&mut self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | w_canvas.style().set_property("width", "400"); [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] 83 | let _ = w_canvas.style().set_property("width", "400"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | w_canvas.style().set_property("height", "400"); [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] 84 | let _ = w_canvas.style().set_property("height", "400"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Promise` that must be used [INFO] [stdout] --> src/lib.rs:227:29 [INFO] [stdout] | [INFO] [stdout] 227 | ... media.then(&temp_callback).catch(&temp_error); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 227 | let _ = media.then(&temp_callback).catch(&temp_error); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `global_ubo` should have an upper case name [INFO] [stdout] --> src/lib.rs:702:12 [INFO] [stdout] | [INFO] [stdout] 702 | static mut global_ubo: Option> = None; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `GLOBAL_UBO` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `global_nodes_count` should have an upper case name [INFO] [stdout] --> src/lib.rs:703:12 [INFO] [stdout] | [INFO] [stdout] 703 | static mut global_nodes_count: Option>> = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `GLOBAL_NODES_COUNT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 72 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serializer::*` [INFO] [stdout] --> src/math/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use serializer::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macro_derive::*` [INFO] [stdout] --> src/bin.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use macro_derive::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `x` should have an upper camel case name [INFO] [stdout] --> src/bin.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | x, [INFO] [stdout] | ^ help: convert the identifier to upper camel case (notice the capitalization): `X` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `sin` should have an upper camel case name [INFO] [stdout] --> src/bin.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | sin, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `cos` should have an upper camel case name [INFO] [stdout] --> src/bin.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | cos, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Cos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serializer::*` [INFO] [stdout] --> src/math/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use serializer::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macro_derive::*` [INFO] [stdout] --> src/bin.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use macro_derive::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `x` should have an upper camel case name [INFO] [stdout] --> src/bin.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | x, [INFO] [stdout] | ^ help: convert the identifier to upper camel case (notice the capitalization): `X` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `sin` should have an upper camel case name [INFO] [stdout] --> src/bin.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | sin, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `cos` should have an upper camel case name [INFO] [stdout] --> src/bin.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | cos, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Cos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 154 | Syntax::Variable(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/math/interpreter.rs:160:30 [INFO] [stdout] | [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input1` [INFO] [stdout] --> src/bin.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | let input1 = "(.395 +56__2_i ) + 7 ^ (3 * 5 + 5)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input2` [INFO] [stdout] --> src/bin.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let input2 = "++++++(.2+++6)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input3` [INFO] [stdout] --> src/bin.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let input3 = "x y + 7"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input5` [INFO] [stdout] --> src/bin.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let input5 = "---5(2+8) + 5awd - x(8)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input6` [INFO] [stdout] --> src/bin.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let input6 = "16^(1/2)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input7` [INFO] [stdout] --> src/bin.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | let input7 = "cos( 1 + \n 5+7)* 23 9 2. "; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input8` [INFO] [stdout] --> src/bin.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | let input8 = "2.|-.3| + |2|"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input9` [INFO] [stdout] --> src/bin.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let input9 = "(2)+|-3|(10)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input10` [INFO] [stdout] --> src/bin.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | let input10 = "0+8)24"; // TODO: Returns after ')' [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input10` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input11` [INFO] [stdout] --> src/bin.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 68 | let input11 = "(10 + 6.2i) * 2"; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input11` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/bin.rs:86:25 [INFO] [stdout] | [INFO] [stdout] 86 | intep.repl_handler(|expr| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `x` is never constructed [INFO] [stdout] --> src/bin.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | enum Variable { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 11 | x, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `Variable` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `sin` and `cos` are never constructed [INFO] [stdout] --> src/bin.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 24 | enum Function { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 25 | sin, [INFO] [stdout] | ^^^ [INFO] [stdout] 26 | cos, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Function` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `infinity` and `nan` are never used [INFO] [stdout] --> src/math/complex.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Complex { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn infinity() -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn nan() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_nan`, `is_infinite`, `is_finite`, `is_normal`, and `is_imaginary` are never used [INFO] [stdout] --> src/math/complex.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn is_nan(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn is_infinite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_finite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_normal(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn is_imaginary(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn fract(self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn sign(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn dot(self, other: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn conjugate(self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn sqrt(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn exp(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn exp_m1(self) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 150 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn asin(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn acos(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn atan(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn cot(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn acot(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn sec(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn asec(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn csc(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn acsc(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cos_m1` is never used [INFO] [stdout] --> src/math/extended.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub trait Extended { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] 2 | fn cos_m1(self) -> Self; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None`, `Exit`, `SetVariable`, and `RemoveVariable` are never constructed [INFO] [stdout] --> src/math/interpreter.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum ReplCommand { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 23 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 24 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 25 | Evaluate, [INFO] [stdout] 26 | SetVariable(String, Complex), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 27 | RemoveVariable(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReplCommand` 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: method `repl` is never used [INFO] [stdout] --> src/math/interpreter.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Intepreter { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn repl(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `empty` is never used [INFO] [stdout] --> src/math/parser.rs:479:12 [INFO] [stdout] | [INFO] [stdout] 451 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 479 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `syntax`, `keyword`, and `value` are never read [INFO] [stdout] --> src/math/serializer.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct NodeData { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 32 | pub syntax: u16, // offset 6, size 2 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 33 | // Pack keyword identifier into hi [INFO] [stdout] 34 | pub keyword: u16, // offset 4, size 2 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 35 | [INFO] [stdout] 36 | pub value: (f32, f32), // offset 8, size 8 [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeData` 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: method `serialize` is never used [INFO] [stdout] --> src/math/serializer.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 128 | impl Expression { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 129 | pub fn serialize(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 154 | Syntax::Variable(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/math/interpreter.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 151 | _ => Complex::zero(), [INFO] [stdout] | - matches any value [INFO] [stdout] ... [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/math/interpreter.rs:160:30 [INFO] [stdout] | [INFO] [stdout] 160 | Syntax::Function(name) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input1` [INFO] [stdout] --> src/bin.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | let input1 = "(.395 +56__2_i ) + 7 ^ (3 * 5 + 5)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input2` [INFO] [stdout] --> src/bin.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let input2 = "++++++(.2+++6)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input3` [INFO] [stdout] --> src/bin.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let input3 = "x y + 7"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input5` [INFO] [stdout] --> src/bin.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let input5 = "---5(2+8) + 5awd - x(8)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input6` [INFO] [stdout] --> src/bin.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let input6 = "16^(1/2)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input7` [INFO] [stdout] --> src/bin.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | let input7 = "cos( 1 + \n 5+7)* 23 9 2. "; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input8` [INFO] [stdout] --> src/bin.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | let input8 = "2.|-.3| + |2|"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input9` [INFO] [stdout] --> src/bin.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let input9 = "(2)+|-3|(10)"; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input10` [INFO] [stdout] --> src/bin.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | let input10 = "0+8)24"; // TODO: Returns after ')' [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input10` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input11` [INFO] [stdout] --> src/bin.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 68 | let input11 = "(10 + 6.2i) * 2"; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input11` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/bin.rs:86:25 [INFO] [stdout] | [INFO] [stdout] 86 | intep.repl_handler(|expr| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `x` is never constructed [INFO] [stdout] --> src/bin.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | enum Variable { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 11 | x, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `Variable` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `sin` and `cos` are never constructed [INFO] [stdout] --> src/bin.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 24 | enum Function { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 25 | sin, [INFO] [stdout] | ^^^ [INFO] [stdout] 26 | cos, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Function` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `infinity` and `nan` are never used [INFO] [stdout] --> src/math/complex.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Complex { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn infinity() -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn nan() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_nan`, `is_infinite`, `is_finite`, `is_normal`, and `is_imaginary` are never used [INFO] [stdout] --> src/math/complex.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn is_nan(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn is_infinite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_finite(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_normal(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn is_imaginary(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn fract(self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn sign(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn dot(self, other: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn conjugate(self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn sqrt(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn exp(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn exp_m1(self) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/math/complex.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 150 | impl Complex { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn asin(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn acos(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn atan(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn cot(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn acot(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn sec(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn asec(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn csc(self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn acsc(self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cos_m1` is never used [INFO] [stdout] --> src/math/extended.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub trait Extended { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] 2 | fn cos_m1(self) -> Self; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None`, `Exit`, `SetVariable`, and `RemoveVariable` are never constructed [INFO] [stdout] --> src/math/interpreter.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum ReplCommand { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 23 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 24 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 25 | Evaluate, [INFO] [stdout] 26 | SetVariable(String, Complex), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 27 | RemoveVariable(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReplCommand` 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: method `repl` is never used [INFO] [stdout] --> src/math/interpreter.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Intepreter { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn repl(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `empty` is never used [INFO] [stdout] --> src/math/parser.rs:479:12 [INFO] [stdout] | [INFO] [stdout] 451 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 479 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `syntax`, `keyword`, and `value` are never read [INFO] [stdout] --> src/math/serializer.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct NodeData { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 32 | pub syntax: u16, // offset 6, size 2 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 33 | // Pack keyword identifier into hi [INFO] [stdout] 34 | pub keyword: u16, // offset 4, size 2 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 35 | [INFO] [stdout] 36 | pub value: (f32, f32), // offset 8, size 8 [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeData` 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: method `serialize` is never used [INFO] [stdout] --> src/math/serializer.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 128 | impl Expression { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 129 | pub fn serialize(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.02s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: console_log v0.2.0, wasm-bindgen v0.2.68 [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" "cfd1b5b295d828c6e8038a7996fcb0c9c1a9301594cb6d59ee41a4f6b461590c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cfd1b5b295d828c6e8038a7996fcb0c9c1a9301594cb6d59ee41a4f6b461590c", kill_on_drop: false }` [INFO] [stdout] cfd1b5b295d828c6e8038a7996fcb0c9c1a9301594cb6d59ee41a4f6b461590c