[INFO] updating cached repository Nickforall/yukon [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Nickforall/yukon [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Nickforall/yukon" "work/ex/clippy-test-run/sources/stable/gh/Nickforall/yukon"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/Nickforall/yukon'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Nickforall/yukon" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Nickforall/yukon"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Nickforall/yukon'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] b310c92cedf77b95fe66c2792fb3a280ee00f605 [INFO] sha for GitHub repo Nickforall/yukon: b310c92cedf77b95fe66c2792fb3a280ee00f605 [INFO] validating manifest of Nickforall/yukon on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of Nickforall/yukon on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing Nickforall/yukon [INFO] finished frobbing Nickforall/yukon [INFO] frobbed toml for Nickforall/yukon written to work/ex/clippy-test-run/sources/stable/gh/Nickforall/yukon/Cargo.toml [INFO] started frobbing Nickforall/yukon [INFO] finished frobbing Nickforall/yukon [INFO] frobbed toml for Nickforall/yukon written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Nickforall/yukon/Cargo.toml [INFO] crate Nickforall/yukon has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting Nickforall/yukon against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/Nickforall/yukon:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 5f0df233ed6fdf83db3c7a101a9b46668b4242ccb640da1156cea498e211560e [INFO] running `"docker" "start" "-a" "5f0df233ed6fdf83db3c7a101a9b46668b4242ccb640da1156cea498e211560e"` [INFO] [stderr] Compiling esprit v0.0.5 [INFO] [stderr] Checking serde_json v0.7.4 [INFO] [stderr] Checking nix v0.5.1 [INFO] [stderr] Checking unjson v0.0.5 [INFO] [stderr] Checking joker v0.0.5 [INFO] [stderr] Checking easter v0.0.5 [INFO] [stderr] Checking rustyline v1.0.0 [INFO] [stderr] Checking estree v0.0.5 [INFO] [stderr] Checking Yukon v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vm/scope.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vm/mod.rs:32:51 [INFO] [stderr] | [INFO] [stderr] 32 | VM::<'a> { image: img, stack: Vec::new(), scope: scope, sp: 0, cp: 0 } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vm/scope.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vm/mod.rs:32:51 [INFO] [stderr] | [INFO] [stderr] 32 | VM::<'a> { image: img, stack: Vec::new(), scope: scope, sp: 0, cp: 0 } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | return JsValue::JsNumber(x + y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x + y)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 12 | _ => return JsValue::JsString(format!("{}{}", js_value_to_string(a), js_value_to_string(b))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsString(format!("{}{}", js_value_to_string(a), js_value_to_string(b)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | return JsValue::JsNumber(x * y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x * y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:24:14 [INFO] [stderr] | [INFO] [stderr] 24 | _ => return JsValue::JsNan [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | return JsValue::JsNumber(x / y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x / y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:36:14 [INFO] [stderr] | [INFO] [stderr] 36 | _ => return JsValue::JsNan [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | return JsValue::JsNumber(x - y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x - y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:48:14 [INFO] [stderr] | [INFO] [stderr] 48 | _ => return JsValue::JsNan [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:57:35 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(parsed == 0 as f64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:58:31 [INFO] [stderr] | [INFO] [stderr] 58 | Err(_) => return rust_to_js_boolean(boolValue != (&JsValue::JsFalse)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue != (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:61:17 [INFO] [stderr] | [INFO] [stderr] 61 | return rust_to_js_boolean(boolValue == (&JsValue::JsFalse)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue == (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | return rust_to_js_boolean(boolValue != (&JsValue::JsFalse)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue != (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:68:17 [INFO] [stderr] | [INFO] [stderr] 68 | return rust_to_js_boolean(boolValue == (&JsValue::JsFalse)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue == (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | return rust_to_js_boolean(boolValue != &JsValue::JsFalse) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue != &JsValue::JsFalse)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:99:33 [INFO] [stderr] | [INFO] [stderr] 99 | Ok(parsed_x) => return rust_to_js_boolean(parsed_x == y), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(parsed_x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:100:27 [INFO] [stderr] | [INFO] [stderr] 100 | Err(_) => return JsValue::JsFalse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:105:33 [INFO] [stderr] | [INFO] [stderr] 105 | Ok(parsed_y) => return rust_to_js_boolean(x == parsed_y), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == parsed_y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:106:27 [INFO] [stderr] | [INFO] [stderr] 106 | Err(_) => return JsValue::JsFalse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:109:14 [INFO] [stderr] | [INFO] [stderr] 109 | _ => return JsValue::JsFalse [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | return flip_js_bool(eq(a, b)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `flip_js_bool(eq(a, b))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:120:13 [INFO] [stderr] | [INFO] [stderr] 120 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | return rust_to_js_boolean(true) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(true)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:129:13 [INFO] [stderr] | [INFO] [stderr] 129 | return rust_to_js_boolean(true) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(true)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:131:14 [INFO] [stderr] | [INFO] [stderr] 131 | _ => return JsValue::JsFalse [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 136 | return flip_js_bool(strict_eq(a, b)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `flip_js_bool(strict_eq(a, b))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:5:29 [INFO] [stderr] | [INFO] [stderr] 5 | &JsValue::JsNull => return "null".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"null".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | &JsValue::JsUndefined => return "undefined".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"undefined".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | &JsValue::JsNan => return "NaN".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"NaN".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:9:38 [INFO] [stderr] | [INFO] [stderr] 9 | &JsValue::JsString(ref s) => return s.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `s.clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | &JsValue::JsTrue => return "true".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"true".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | &JsValue::JsFalse => return "false".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"false".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 5 | return JsValue::JsTrue [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsTrue` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | return JsValue::JsFalse [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:15:33 [INFO] [stderr] | [INFO] [stderr] 15 | Ok(parsed_x) => return JsValue::JsNumber(parsed_x), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(parsed_x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | Err(_) => return JsValue::JsString(string.clone()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsString(string.clone())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:19:14 [INFO] [stderr] | [INFO] [stderr] 19 | _ => return v.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `v.clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | return rust_to_js_boolean(b != JsValue::JsTrue) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(b != JsValue::JsTrue)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused import: `std` [INFO] [stderr] --> src/vm/scope.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/scope.rs:29:24 [INFO] [stderr] | [INFO] [stderr] 29 | Some(a) => return a.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `a.clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/scope.rs:30:21 [INFO] [stderr] | [INFO] [stderr] 30 | None => return JsValue::JsUndefined [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsUndefined` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/mod.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | return self.stack[self.stack.len() - 1].clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.stack[self.stack.len() - 1].clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustyline::error::ReadlineError` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use rustyline::error::ReadlineError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustyline::Editor` [INFO] [stderr] --> src/main.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use rustyline::Editor; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ansi_term::Colour::RGB` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use ansi_term::Colour::RGB; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tests.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | return image; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `image` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tests.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | return engine.read_stack_end(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `engine.read_stack_end()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | return JsValue::JsNumber(x + y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x + y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 12 | _ => return JsValue::JsString(format!("{}{}", js_value_to_string(a), js_value_to_string(b))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsString(format!("{}{}", js_value_to_string(a), js_value_to_string(b)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | return JsValue::JsNumber(x * y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x * y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:24:14 [INFO] [stderr] | [INFO] [stderr] 24 | _ => return JsValue::JsNan [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | return JsValue::JsNumber(x / y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x / y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:36:14 [INFO] [stderr] | [INFO] [stderr] 36 | _ => return JsValue::JsNan [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | return JsValue::JsNumber(x - y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(x - y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:48:14 [INFO] [stderr] | [INFO] [stderr] 48 | _ => return JsValue::JsNan [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNan` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:57:35 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(parsed == 0 as f64)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:58:31 [INFO] [stderr] | [INFO] [stderr] 58 | Err(_) => return rust_to_js_boolean(boolValue != (&JsValue::JsFalse)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue != (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:61:17 [INFO] [stderr] | [INFO] [stderr] 61 | return rust_to_js_boolean(boolValue == (&JsValue::JsFalse)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue == (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | return rust_to_js_boolean(boolValue != (&JsValue::JsFalse)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue != (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:68:17 [INFO] [stderr] | [INFO] [stderr] 68 | return rust_to_js_boolean(boolValue == (&JsValue::JsFalse)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue == (&JsValue::JsFalse))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | return rust_to_js_boolean(boolValue != &JsValue::JsFalse) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(boolValue != &JsValue::JsFalse)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:99:33 [INFO] [stderr] | [INFO] [stderr] 99 | Ok(parsed_x) => return rust_to_js_boolean(parsed_x == y), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(parsed_x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:100:27 [INFO] [stderr] | [INFO] [stderr] 100 | Err(_) => return JsValue::JsFalse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:105:33 [INFO] [stderr] | [INFO] [stderr] 105 | Ok(parsed_y) => return rust_to_js_boolean(x == parsed_y), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == parsed_y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:106:27 [INFO] [stderr] | [INFO] [stderr] 106 | Err(_) => return JsValue::JsFalse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:109:14 [INFO] [stderr] | [INFO] [stderr] 109 | _ => return JsValue::JsFalse [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | return flip_js_bool(eq(a, b)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `flip_js_bool(eq(a, b))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:120:13 [INFO] [stderr] | [INFO] [stderr] 120 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | return rust_to_js_boolean(x == y) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(x == y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | return rust_to_js_boolean(true) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(true)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:129:13 [INFO] [stderr] | [INFO] [stderr] 129 | return rust_to_js_boolean(true) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(true)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:131:14 [INFO] [stderr] | [INFO] [stderr] 131 | _ => return JsValue::JsFalse [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/operations.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 136 | return flip_js_bool(strict_eq(a, b)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `flip_js_bool(strict_eq(a, b))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:5:29 [INFO] [stderr] | [INFO] [stderr] 5 | &JsValue::JsNull => return "null".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"null".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | &JsValue::JsUndefined => return "undefined".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"undefined".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | &JsValue::JsNan => return "NaN".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"NaN".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:9:38 [INFO] [stderr] | [INFO] [stderr] 9 | &JsValue::JsString(ref s) => return s.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `s.clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | &JsValue::JsTrue => return "true".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"true".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/temp.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | &JsValue::JsFalse => return "false".to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"false".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 5 | return JsValue::JsTrue [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsTrue` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | return JsValue::JsFalse [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsFalse` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:15:33 [INFO] [stderr] | [INFO] [stderr] 15 | Ok(parsed_x) => return JsValue::JsNumber(parsed_x), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsNumber(parsed_x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | Err(_) => return JsValue::JsString(string.clone()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsString(string.clone())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:19:14 [INFO] [stderr] | [INFO] [stderr] 19 | _ => return v.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `v.clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/types.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | return rust_to_js_boolean(b != JsValue::JsTrue) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `rust_to_js_boolean(b != JsValue::JsTrue)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused import: `std` [INFO] [stderr] --> src/vm/scope.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/scope.rs:29:24 [INFO] [stderr] | [INFO] [stderr] 29 | Some(a) => return a.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `a.clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/scope.rs:30:21 [INFO] [stderr] | [INFO] [stderr] 30 | None => return JsValue::JsUndefined [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JsValue::JsUndefined` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/vm/mod.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | return self.stack[self.stack.len() - 1].clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.stack[self.stack.len() - 1].clone()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused variable: `image` [INFO] [stderr] --> src/bytecode.rs:83:17 [INFO] [stderr] | [INFO] [stderr] 83 | fn compile_decl(image: &mut Image, decl: easter::decl::Decl) { [INFO] [stderr] | ^^^^^ help: consider using `_image` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decl` [INFO] [stderr] --> src/bytecode.rs:83:36 [INFO] [stderr] | [INFO] [stderr] 83 | fn compile_decl(image: &mut Image, decl: easter::decl::Decl) { [INFO] [stderr] | ^^^^ help: consider using `_decl` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `parent` [INFO] [stderr] --> src/vm/scope.rs:14:25 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn new(id: i32, parent: i32) { [INFO] [stderr] | ^^^^^^ help: consider using `_parent` instead [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/vm/scope.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn new(id: i32, parent: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `JsNull` [INFO] [stderr] --> src/vm/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | JsNull, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: crate `Yukon` should have a snake case name such as `yukon` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `boolValue` should have a snake case name such as `bool_value` [INFO] [stderr] --> src/vm/operations.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | fn handle_eq_with_bool(boolValue: &JsValue, comparedValue: &JsValue) -> JsValue { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `comparedValue` should have a snake case name such as `compared_value` [INFO] [stderr] --> src/vm/operations.rs:52:45 [INFO] [stderr] | [INFO] [stderr] 52 | fn handle_eq_with_bool(boolValue: &JsValue, comparedValue: &JsValue) -> JsValue { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/operations.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | / match comparedValue { [INFO] [stderr] 54 | | &JsValue::JsString(ref x) => { [INFO] [stderr] 55 | | if !x.is_empty() { [INFO] [stderr] 56 | | match x.clone().parse::() { [INFO] [stderr] ... | [INFO] [stderr] 73 | | } [INFO] [stderr] 74 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 53 | match *comparedValue { [INFO] [stderr] 54 | JsValue::JsString(ref x) => { [INFO] [stderr] 55 | if !x.is_empty() { [INFO] [stderr] 56 | match x.clone().parse::() { [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] 58 | Err(_) => return rust_to_js_boolean(boolValue != (&JsValue::JsFalse)), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vm/operations.rs:57:61 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(parsed - 0 as f64).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vm/operations.rs:57:61 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/vm/operations.rs:57:71 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(0)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vm/operations.rs:65:16 [INFO] [stderr] | [INFO] [stderr] 65 | if x != 0 as f64 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider comparing them within some error: `(x - 0 as f64).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vm/operations.rs:65:16 [INFO] [stderr] | [INFO] [stderr] 65 | if x != 0 as f64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/vm/operations.rs:65:21 [INFO] [stderr] | [INFO] [stderr] 65 | if x != 0 as f64 { [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/temp.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | / match val { [INFO] [stderr] 5 | | &JsValue::JsNull => return "null".to_owned(), [INFO] [stderr] 6 | | &JsValue::JsUndefined => return "undefined".to_owned(), [INFO] [stderr] 7 | | &JsValue::JsNan => return "NaN".to_owned(), [INFO] [stderr] ... | [INFO] [stderr] 11 | | &JsValue::JsFalse => return "false".to_owned(), [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 4 | match *val { [INFO] [stderr] 5 | JsValue::JsNull => return "null".to_owned(), [INFO] [stderr] 6 | JsValue::JsUndefined => return "undefined".to_owned(), [INFO] [stderr] 7 | JsValue::JsNan => return "NaN".to_owned(), [INFO] [stderr] 8 | JsValue::JsNumber(num) => return format!("{}", num), [INFO] [stderr] 9 | JsValue::JsString(ref s) => return s.clone(), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/vm/types.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | if b == true { [INFO] [stderr] | ^^^^^^^^^ help: try simplifying it as shown: `b` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/types.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / match v { [INFO] [stderr] 13 | | &JsValue::JsString(ref string) => { [INFO] [stderr] 14 | | match string.clone().parse::() { [INFO] [stderr] 15 | | Ok(parsed_x) => return JsValue::JsNumber(parsed_x), [INFO] [stderr] ... | [INFO] [stderr] 19 | | _ => return v.clone() [INFO] [stderr] 20 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 12 | match *v { [INFO] [stderr] 13 | JsValue::JsString(ref string) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/repl.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | / match val { [INFO] [stderr] 7 | | &JsValue::JsNull => return format!("{}", RGB(130, 130, 130).paint("null".to_owned())), [INFO] [stderr] 8 | | &JsValue::JsUndefined => return format!("{}", RGB(130, 130, 130).paint("undefined".to_owned())), [INFO] [stderr] 9 | | &JsValue::JsNan => return format!("{}", RGB(209, 154, 102).paint("NaN".to_owned())), [INFO] [stderr] ... | [INFO] [stderr] 13 | | &JsValue::JsFalse => return format!("{}", RGB(209, 154, 102).paint("false".to_owned())), [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 6 | match *val { [INFO] [stderr] 7 | JsValue::JsNull => return format!("{}", RGB(130, 130, 130).paint("null".to_owned())), [INFO] [stderr] 8 | JsValue::JsUndefined => return format!("{}", RGB(130, 130, 130).paint("undefined".to_owned())), [INFO] [stderr] 9 | JsValue::JsNan => return format!("{}", RGB(209, 154, 102).paint("NaN".to_owned())), [INFO] [stderr] 10 | JsValue::JsNumber(num) => return format!("{}", RGB(209, 154, 102).paint(format!("{}", num))), [INFO] [stderr] 11 | JsValue::JsString(ref s) => return format!("{}", RGB(152, 195, 121).paint(format!("\"{}\"", s.clone()))), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/vm/scope.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | / pub fn new(id: i32, parent: i32) { [INFO] [stderr] 15 | | Scope { [INFO] [stderr] 16 | | id: id, [INFO] [stderr] 17 | | is_global: false, [INFO] [stderr] ... | [INFO] [stderr] 20 | | }; [INFO] [stderr] 21 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: statement can be reduced [INFO] [stderr] --> src/vm/scope.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | / Scope { [INFO] [stderr] 16 | | id: id, [INFO] [stderr] 17 | | is_global: false, [INFO] [stderr] 18 | | variables: HashMap::new(), [INFO] [stderr] 19 | | parent: id [INFO] [stderr] 20 | | }; [INFO] [stderr] | |__________^ help: replace it with: `id;false;HashMap::new();id;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_operation)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_operation [INFO] [stderr] [INFO] [stderr] warning: length comparison to one [INFO] [stderr] --> src/vm/mod.rs:36:12 [INFO] [stderr] | [INFO] [stderr] 36 | if self.stack.len() < 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.stack.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `Yukon`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused variable: `image` [INFO] [stderr] --> src/bytecode.rs:83:17 [INFO] [stderr] | [INFO] [stderr] 83 | fn compile_decl(image: &mut Image, decl: easter::decl::Decl) { [INFO] [stderr] | ^^^^^ help: consider using `_image` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decl` [INFO] [stderr] --> src/bytecode.rs:83:36 [INFO] [stderr] | [INFO] [stderr] 83 | fn compile_decl(image: &mut Image, decl: easter::decl::Decl) { [INFO] [stderr] | ^^^^ help: consider using `_decl` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `image` [INFO] [stderr] --> src/tests.rs:51:13 [INFO] [stderr] | [INFO] [stderr] 51 | let image: Image; [INFO] [stderr] | ^^^^^ help: consider using `_image` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `parent` [INFO] [stderr] --> src/vm/scope.rs:14:25 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn new(id: i32, parent: i32) { [INFO] [stderr] | ^^^^^^ help: consider using `_parent` instead [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ret_value_fmt` [INFO] [stderr] --> src/vm/repl.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn ret_value_fmt(val: &JsValue) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/vm/scope.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn new(id: i32, parent: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `JsNull` [INFO] [stderr] --> src/vm/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | JsNull, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: crate `Yukon` should have a snake case name such as `yukon` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:20:68 [INFO] [stderr] | [INFO] [stderr] 20 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::ADD]}, [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(1)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:20:100 [INFO] [stderr] | [INFO] [stderr] 20 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::ADD]}, [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(10)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:28:68 [INFO] [stderr] | [INFO] [stderr] 28 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::SUB]}, [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:28:100 [INFO] [stderr] | [INFO] [stderr] 28 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::SUB]}, [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(10)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:36:68 [INFO] [stderr] | [INFO] [stderr] 36 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::DIV]}, [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:36:100 [INFO] [stderr] | [INFO] [stderr] 36 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::DIV]}, [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(10)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:44:68 [INFO] [stderr] | [INFO] [stderr] 44 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::MLP]}, [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:44:100 [INFO] [stderr] | [INFO] [stderr] 44 | script: Block {instructions: vec![Instruction::PUSHNUM(1 as f64), Instruction::PUSHNUM(10 as f64), Instruction::MLP]}, [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(10)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:90:69 [INFO] [stderr] | [INFO] [stderr] 90 | assert_eq!(compile_repl("1 + 2"), vm::JsValue::JsNumber(3 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(3)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:95:69 [INFO] [stderr] | [INFO] [stderr] 95 | assert_eq!(compile_repl("1 * 2"), vm::JsValue::JsNumber(2 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:100:70 [INFO] [stderr] | [INFO] [stderr] 100 | assert_eq!(compile_repl("10 / 2"), vm::JsValue::JsNumber(5 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:105:70 [INFO] [stderr] | [INFO] [stderr] 105 | assert_eq!(compile_repl("10 - 2"), vm::JsValue::JsNumber(8 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(8)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:135:74 [INFO] [stderr] | [INFO] [stderr] 135 | assert_eq!(compile_repl("10 - \"5\""), vm::JsValue::JsNumber(5 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:140:74 [INFO] [stderr] | [INFO] [stderr] 140 | assert_eq!(compile_repl("10 * \"5\""), vm::JsValue::JsNumber(50 as f64)) [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(50)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:145:74 [INFO] [stderr] | [INFO] [stderr] 145 | assert_eq!(compile_repl("10 / \"5\""), vm::JsValue::JsNumber(2 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:165:74 [INFO] [stderr] | [INFO] [stderr] 165 | assert_eq!(compile_repl("\"10\" - 5"), vm::JsValue::JsNumber(5 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:170:74 [INFO] [stderr] | [INFO] [stderr] 170 | assert_eq!(compile_repl("\"5\" * 10"), vm::JsValue::JsNumber(50 as f64)) [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(50)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:175:74 [INFO] [stderr] | [INFO] [stderr] 175 | assert_eq!(compile_repl("\"10\" / 5"), vm::JsValue::JsNumber(2 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:310:77 [INFO] [stderr] | [INFO] [stderr] 310 | assert_eq!(compile_repl("var a = 1; a;"), vm::JsValue::JsNumber(1 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:315:85 [INFO] [stderr] | [INFO] [stderr] 315 | assert_eq!(compile_repl("var a = 1; a = 10; a;"), vm::JsValue::JsNumber(10 as f64)) [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(10)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:320:83 [INFO] [stderr] | [INFO] [stderr] 320 | assert_eq!(compile_repl("var a = 1; a += 10;"), vm::JsValue::JsNumber(11 as f64)) [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(11)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:325:83 [INFO] [stderr] | [INFO] [stderr] 325 | assert_eq!(compile_repl("var a = 10; a -= 5;"), vm::JsValue::JsNumber(5 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:330:83 [INFO] [stderr] | [INFO] [stderr] 330 | assert_eq!(compile_repl("var a = 10; a /= 2;"), vm::JsValue::JsNumber(5 as f64)) [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(5)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/tests.rs:335:83 [INFO] [stderr] | [INFO] [stderr] 335 | assert_eq!(compile_repl("var a = 10; a *= 5;"), vm::JsValue::JsNumber(50 as f64)) [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(50)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: variable `boolValue` should have a snake case name such as `bool_value` [INFO] [stderr] --> src/vm/operations.rs:52:24 [INFO] [stderr] | [INFO] [stderr] 52 | fn handle_eq_with_bool(boolValue: &JsValue, comparedValue: &JsValue) -> JsValue { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `comparedValue` should have a snake case name such as `compared_value` [INFO] [stderr] --> src/vm/operations.rs:52:45 [INFO] [stderr] | [INFO] [stderr] 52 | fn handle_eq_with_bool(boolValue: &JsValue, comparedValue: &JsValue) -> JsValue { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/operations.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | / match comparedValue { [INFO] [stderr] 54 | | &JsValue::JsString(ref x) => { [INFO] [stderr] 55 | | if !x.is_empty() { [INFO] [stderr] 56 | | match x.clone().parse::() { [INFO] [stderr] ... | [INFO] [stderr] 73 | | } [INFO] [stderr] 74 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 53 | match *comparedValue { [INFO] [stderr] 54 | JsValue::JsString(ref x) => { [INFO] [stderr] 55 | if !x.is_empty() { [INFO] [stderr] 56 | match x.clone().parse::() { [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] 58 | Err(_) => return rust_to_js_boolean(boolValue != (&JsValue::JsFalse)), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vm/operations.rs:57:61 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(parsed - 0 as f64).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vm/operations.rs:57:61 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/vm/operations.rs:57:71 [INFO] [stderr] | [INFO] [stderr] 57 | Ok(parsed) => return rust_to_js_boolean(parsed == 0 as f64), [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vm/operations.rs:65:16 [INFO] [stderr] | [INFO] [stderr] 65 | if x != 0 as f64 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider comparing them within some error: `(x - 0 as f64).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vm/operations.rs:65:16 [INFO] [stderr] | [INFO] [stderr] 65 | if x != 0 as f64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/vm/operations.rs:65:21 [INFO] [stderr] | [INFO] [stderr] 65 | if x != 0 as f64 { [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/temp.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | / match val { [INFO] [stderr] 5 | | &JsValue::JsNull => return "null".to_owned(), [INFO] [stderr] 6 | | &JsValue::JsUndefined => return "undefined".to_owned(), [INFO] [stderr] 7 | | &JsValue::JsNan => return "NaN".to_owned(), [INFO] [stderr] ... | [INFO] [stderr] 11 | | &JsValue::JsFalse => return "false".to_owned(), [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 4 | match *val { [INFO] [stderr] 5 | JsValue::JsNull => return "null".to_owned(), [INFO] [stderr] 6 | JsValue::JsUndefined => return "undefined".to_owned(), [INFO] [stderr] 7 | JsValue::JsNan => return "NaN".to_owned(), [INFO] [stderr] 8 | JsValue::JsNumber(num) => return format!("{}", num), [INFO] [stderr] 9 | JsValue::JsString(ref s) => return s.clone(), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/vm/types.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | if b == true { [INFO] [stderr] | ^^^^^^^^^ help: try simplifying it as shown: `b` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/types.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / match v { [INFO] [stderr] 13 | | &JsValue::JsString(ref string) => { [INFO] [stderr] 14 | | match string.clone().parse::() { [INFO] [stderr] 15 | | Ok(parsed_x) => return JsValue::JsNumber(parsed_x), [INFO] [stderr] ... | [INFO] [stderr] 19 | | _ => return v.clone() [INFO] [stderr] 20 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 12 | match *v { [INFO] [stderr] 13 | JsValue::JsString(ref string) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/vm/repl.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | / match val { [INFO] [stderr] 7 | | &JsValue::JsNull => return format!("{}", RGB(130, 130, 130).paint("null".to_owned())), [INFO] [stderr] 8 | | &JsValue::JsUndefined => return format!("{}", RGB(130, 130, 130).paint("undefined".to_owned())), [INFO] [stderr] 9 | | &JsValue::JsNan => return format!("{}", RGB(209, 154, 102).paint("NaN".to_owned())), [INFO] [stderr] ... | [INFO] [stderr] 13 | | &JsValue::JsFalse => return format!("{}", RGB(209, 154, 102).paint("false".to_owned())), [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 6 | match *val { [INFO] [stderr] 7 | JsValue::JsNull => return format!("{}", RGB(130, 130, 130).paint("null".to_owned())), [INFO] [stderr] 8 | JsValue::JsUndefined => return format!("{}", RGB(130, 130, 130).paint("undefined".to_owned())), [INFO] [stderr] 9 | JsValue::JsNan => return format!("{}", RGB(209, 154, 102).paint("NaN".to_owned())), [INFO] [stderr] 10 | JsValue::JsNumber(num) => return format!("{}", RGB(209, 154, 102).paint(format!("{}", num))), [INFO] [stderr] 11 | JsValue::JsString(ref s) => return format!("{}", RGB(152, 195, 121).paint(format!("\"{}\"", s.clone()))), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/vm/scope.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | / pub fn new(id: i32, parent: i32) { [INFO] [stderr] 15 | | Scope { [INFO] [stderr] 16 | | id: id, [INFO] [stderr] 17 | | is_global: false, [INFO] [stderr] ... | [INFO] [stderr] 20 | | }; [INFO] [stderr] 21 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: statement can be reduced [INFO] [stderr] --> src/vm/scope.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | / Scope { [INFO] [stderr] 16 | | id: id, [INFO] [stderr] 17 | | is_global: false, [INFO] [stderr] 18 | | variables: HashMap::new(), [INFO] [stderr] 19 | | parent: id [INFO] [stderr] 20 | | }; [INFO] [stderr] | |__________^ help: replace it with: `id;false;HashMap::new();id;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_operation)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_operation [INFO] [stderr] [INFO] [stderr] warning: length comparison to one [INFO] [stderr] --> src/vm/mod.rs:36:12 [INFO] [stderr] | [INFO] [stderr] 36 | if self.stack.len() < 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.stack.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `Yukon`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "5f0df233ed6fdf83db3c7a101a9b46668b4242ccb640da1156cea498e211560e"` [INFO] running `"docker" "rm" "-f" "5f0df233ed6fdf83db3c7a101a9b46668b4242ccb640da1156cea498e211560e"` [INFO] [stdout] 5f0df233ed6fdf83db3c7a101a9b46668b4242ccb640da1156cea498e211560e