[INFO] cloning repository https://github.com/modernserf/gremlin_rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/modernserf/gremlin_rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmodernserf%2Fgremlin_rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmodernserf%2Fgremlin_rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 843b25b658fe6e7a92a4012cc41599b13a8f8247 [INFO] linting modernserf/gremlin_rs against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmodernserf%2Fgremlin_rs" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/modernserf/gremlin_rs [INFO] finished tweaking git repo https://github.com/modernserf/gremlin_rs [INFO] tweaked toml for git repo https://github.com/modernserf/gremlin_rs written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/modernserf/gremlin_rs on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/modernserf/gremlin_rs 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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 556ae7c95800338be449d82c54c01c0946684d6ddbf8109ecee60edc97fc69a2 [INFO] running `Command { std: "docker" "start" "-a" "556ae7c95800338be449d82c54c01c0946684d6ddbf8109ecee60edc97fc69a2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "556ae7c95800338be449d82c54c01c0946684d6ddbf8109ecee60edc97fc69a2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "556ae7c95800338be449d82c54c01c0946684d6ddbf8109ecee60edc97fc69a2", kill_on_drop: false }` [INFO] [stdout] 556ae7c95800338be449d82c54c01c0946684d6ddbf8109ecee60edc97fc69a2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d35d6338e90c0531f2cab6731b4991cd5ac3735823f9ed1cdff857af150da8bc [INFO] running `Command { std: "docker" "start" "-a" "d35d6338e90c0531f2cab6731b4991cd5ac3735823f9ed1cdff857af150da8bc", kill_on_drop: false }` [INFO] [stderr] Checking gremlin_rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/memory2.rs:353:17 [INFO] [stdout] | [INFO] [stdout] 353 | assert!(self.scope.len() == 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.scope.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:383:9 [INFO] [stdout] | [INFO] [stdout] 383 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 383 - return None; [INFO] [stdout] 383 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/memory2.rs:511:16 [INFO] [stdout] | [INFO] [stdout] 511 | if let Some(_) = r.try_remove(self) { [INFO] [stdout] | -------^^^^^^^--------------------- help: try: `if r.try_remove(self).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is not `Copy`) usually take `self` by reference [INFO] [stdout] --> src/memory2.rs:594:17 [INFO] [stdout] | [INFO] [stdout] 594 | fn to_stack(&mut self, ty: Ty, src_ea: EA) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/memory2.rs:629:9 [INFO] [stdout] | [INFO] [stdout] 628 | let idx = self.to_stack(ty.clone(), src_ea); [INFO] [stdout] | -------------------------------------------- unnecessary `let` binding [INFO] [stdout] 629 | idx [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 628 ~ [INFO] [stdout] 629 ~ self.to_stack(ty.clone(), src_ea) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:707:17 [INFO] [stdout] | [INFO] [stdout] 707 | return Ok(Item::Local(ty.add_ref(), idx, ref_level + 1)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 707 ~ Ok(Item::Local(ty.add_ref(), idx, ref_level + 1)) [INFO] [stdout] 708 | } [INFO] [stdout] 709 | _ => return Err(InvalidRef), [INFO] [stdout] 710 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:709:18 [INFO] [stdout] | [INFO] [stdout] 709 | _ => return Err(InvalidRef), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 709 ~ _ => Err(InvalidRef), [INFO] [stdout] 710 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:716:37 [INFO] [stdout] | [INFO] [stdout] 716 | Item::Address(ty, a) => return Ok(Item::AddressIndirect(ty.deref()?, a, 0)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 716 ~ Item::Address(ty, a) => Ok(Item::AddressIndirect(ty.deref()?, a, 0)), [INFO] [stdout] 717 | Item::AddressIndirect(ty, a, offset) => { [INFO] [stdout] ... [INFO] [stdout] 726 | } [INFO] [stdout] 727 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:719:17 [INFO] [stdout] | [INFO] [stdout] 719 | return Ok(Item::AddressIndirect(ty.deref()?, a, offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 719 ~ Ok(Item::AddressIndirect(ty.deref()?, a, offset)) [INFO] [stdout] 720 | } [INFO] [stdout] ... [INFO] [stdout] 726 | } [INFO] [stdout] 727 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:725:17 [INFO] [stdout] | [INFO] [stdout] 725 | return Err(InvalidDeref); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 725 ~ Err(InvalidDeref) [INFO] [stdout] 726 | } [INFO] [stdout] 727 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> src/memory2.rs:1203:14 [INFO] [stdout] | [INFO] [stdout] 1203 | .fold(0, |acc, size| acc + size) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `sum()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `ExprCompiler::new` doesn't need a mutable reference [INFO] [stdout] --> src/expr.rs:693:53 [INFO] [stdout] | [INFO] [stdout] 693 | ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 693 - ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] 693 + ExprCompiler::new(&mut self.memory, &self.module_scope, &mut self.scope); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `ExprCompiler::new` doesn't need a mutable reference [INFO] [stdout] --> src/expr.rs:693:77 [INFO] [stdout] | [INFO] [stdout] 693 | ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 693 - ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] 693 + ExprCompiler::new(&mut self.memory, &mut self.module_scope, &self.scope); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `ExprCompiler::new` doesn't need a mutable reference [INFO] [stdout] --> src/expr.rs:708:53 [INFO] [stdout] | [INFO] [stdout] 708 | ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 708 - ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] 708 + ExprCompiler::new(&mut self.memory, &self.module_scope, &mut self.scope); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `ExprCompiler::new` doesn't need a mutable reference [INFO] [stdout] --> src/expr.rs:708:77 [INFO] [stdout] | [INFO] [stdout] 708 | ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 708 - ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] 708 + ExprCompiler::new(&mut self.memory, &mut self.module_scope, &self.scope); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `ExprCompiler::new` doesn't need a mutable reference [INFO] [stdout] --> src/expr.rs:722:53 [INFO] [stdout] | [INFO] [stdout] 722 | ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 722 - ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] 722 + ExprCompiler::new(&mut self.memory, &self.module_scope, &mut self.scope); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `ExprCompiler::new` doesn't need a mutable reference [INFO] [stdout] --> src/expr.rs:722:77 [INFO] [stdout] | [INFO] [stdout] 722 | ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 722 - ExprCompiler::new(&mut self.memory, &mut self.module_scope, &mut self.scope); [INFO] [stdout] 722 + ExprCompiler::new(&mut self.memory, &mut self.module_scope, &self.scope); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/memory2.rs:212:24 [INFO] [stdout] | [INFO] [stdout] 212 | if if_false.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!if_false.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/memory2.rs:353:17 [INFO] [stdout] | [INFO] [stdout] 353 | assert!(self.scope.len() == 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.scope.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:383:9 [INFO] [stdout] | [INFO] [stdout] 383 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 383 - return None; [INFO] [stdout] 383 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/memory2.rs:511:16 [INFO] [stdout] | [INFO] [stdout] 511 | if let Some(_) = r.try_remove(self) { [INFO] [stdout] | -------^^^^^^^--------------------- help: try: `if r.try_remove(self).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is not `Copy`) usually take `self` by reference [INFO] [stdout] --> src/memory2.rs:594:17 [INFO] [stdout] | [INFO] [stdout] 594 | fn to_stack(&mut self, ty: Ty, src_ea: EA) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/memory2.rs:629:9 [INFO] [stdout] | [INFO] [stdout] 628 | let idx = self.to_stack(ty.clone(), src_ea); [INFO] [stdout] | -------------------------------------------- unnecessary `let` binding [INFO] [stdout] 629 | idx [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 628 ~ [INFO] [stdout] 629 ~ self.to_stack(ty.clone(), src_ea) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:707:17 [INFO] [stdout] | [INFO] [stdout] 707 | return Ok(Item::Local(ty.add_ref(), idx, ref_level + 1)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 707 ~ Ok(Item::Local(ty.add_ref(), idx, ref_level + 1)) [INFO] [stdout] 708 | } [INFO] [stdout] 709 | _ => return Err(InvalidRef), [INFO] [stdout] 710 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:709:18 [INFO] [stdout] | [INFO] [stdout] 709 | _ => return Err(InvalidRef), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 709 ~ _ => Err(InvalidRef), [INFO] [stdout] 710 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:716:37 [INFO] [stdout] | [INFO] [stdout] 716 | Item::Address(ty, a) => return Ok(Item::AddressIndirect(ty.deref()?, a, 0)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 716 ~ Item::Address(ty, a) => Ok(Item::AddressIndirect(ty.deref()?, a, 0)), [INFO] [stdout] 717 | Item::AddressIndirect(ty, a, offset) => { [INFO] [stdout] ... [INFO] [stdout] 726 | } [INFO] [stdout] 727 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:719:17 [INFO] [stdout] | [INFO] [stdout] 719 | return Ok(Item::AddressIndirect(ty.deref()?, a, offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 719 ~ Ok(Item::AddressIndirect(ty.deref()?, a, offset)) [INFO] [stdout] 720 | } [INFO] [stdout] ... [INFO] [stdout] 726 | } [INFO] [stdout] 727 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/memory2.rs:725:17 [INFO] [stdout] | [INFO] [stdout] 725 | return Err(InvalidDeref); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 725 ~ Err(InvalidDeref) [INFO] [stdout] 726 | } [INFO] [stdout] 727 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/v2/ea.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / match self { [INFO] [stdout] 80 | | Self::Offset(_, _) [INFO] [stdout] 81 | | | Self::IdxData(_, _, _) [INFO] [stdout] 82 | | | Self::IdxAddr(_, _, _) [INFO] [stdout] ... | [INFO] [stdout] 87 | | _ => false, [INFO] [stdout] 88 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] = note: `#[warn(clippy::match_like_matches_macro)]` on by default [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 79 ~ matches!(self, Self::Offset(_, _) [INFO] [stdout] 80 + | Self::IdxData(_, _, _) [INFO] [stdout] 81 + | Self::IdxAddr(_, _, _) [INFO] [stdout] 82 + | Self::Absolute(_) [INFO] [stdout] 83 + | Self::PCOffset(_) [INFO] [stdout] 84 + | Self::PCIdxData(_, _) [INFO] [stdout] 85 + | Self::PCIdxAddr(_, _)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i16` -> `i16`) [INFO] [stdout] --> src/v2/ea.rs:179:32 [INFO] [stdout] | [INFO] [stdout] 179 | out.extend((o as i16).to_be_bytes()) [INFO] [stdout] | ^^^^^^^^^^ help: try: `o` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> src/memory2.rs:1203:14 [INFO] [stdout] | [INFO] [stdout] 1203 | .fold(0, |acc, size| acc + size) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `sum()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/v2/memory5.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | if self.deref_offsets.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!self.deref_offsets.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:649:9 [INFO] [stdout] | [INFO] [stdout] 649 | return id; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 649 - return id; [INFO] [stdout] 649 + id [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:660:9 [INFO] [stdout] | [INFO] [stdout] 660 | return id; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 660 - return id; [INFO] [stdout] 660 + id [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:668:9 [INFO] [stdout] | [INFO] [stdout] 668 | return id; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 668 - return id; [INFO] [stdout] 668 + id [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/v2/memory5.rs:912:12 [INFO] [stdout] | [INFO] [stdout] 912 | if self.block_scopes.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.block_scopes.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:1093:9 [INFO] [stdout] | [INFO] [stdout] 1093 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1093 - return None; [INFO] [stdout] 1093 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/v2/memory5.rs:1081:13 [INFO] [stdout] | [INFO] [stdout] 1081 | / match item { [INFO] [stdout] 1082 | | Item::Storage(storage) => { [INFO] [stdout] 1083 | | if let Some(storage) = f(self, *storage, None) { [INFO] [stdout] 1084 | | *item = Item::Storage(storage); [INFO] [stdout] ... | [INFO] [stdout] 1089 | | _ => {} [INFO] [stdout] 1090 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 1081 ~ if let Item::Storage(storage) = item { [INFO] [stdout] 1082 + if let Some(storage) = f(self, *storage, None) { [INFO] [stdout] 1083 + *item = Item::Storage(storage); [INFO] [stdout] 1084 + self.stack = stack; [INFO] [stdout] 1085 + return Some(()); [INFO] [stdout] 1086 + } [INFO] [stdout] 1087 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: items after a test module [INFO] [stdout] --> src/ty.rs:426:1 [INFO] [stdout] | [INFO] [stdout] 426 | mod test { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub struct TyScope { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | impl TyScope { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#items_after_test_module [INFO] [stdout] = note: `#[warn(clippy::items_after_test_module)]` on by default [INFO] [stdout] = help: move the items to before the test module was defined [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/v2/register.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | / match self.rs[r.into()] { [INFO] [stdout] 123 | | RegisterUse::LastUsed(_) => true, [INFO] [stdout] 124 | | _ => false, [INFO] [stdout] 125 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 122 - match self.rs[r.into()] { [INFO] [stdout] 123 - RegisterUse::LastUsed(_) => true, [INFO] [stdout] 124 - _ => false, [INFO] [stdout] 125 - } [INFO] [stdout] 122 + matches!(self.rs[r.into()], RegisterUse::LastUsed(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/v2/register.rs:152:22 [INFO] [stdout] | [INFO] [stdout] 152 | spilled: match min.1 { [INFO] [stdout] | ______________________^ [INFO] [stdout] 153 | | RegisterUse::LastUsed(_) => true, [INFO] [stdout] 154 | | _ => false, [INFO] [stdout] 155 | | }, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 152 - spilled: match min.1 { [INFO] [stdout] 153 - RegisterUse::LastUsed(_) => true, [INFO] [stdout] 154 - _ => false, [INFO] [stdout] 155 - }, [INFO] [stdout] 152 + spilled: matches!(min.1, RegisterUse::LastUsed(_)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:127:33 [INFO] [stdout] | [INFO] [stdout] 127 | (0b0000, 0..=0b110, 0b00 | 0b001 | 0b010) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `0b00..=0b010` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] = note: `#[warn(clippy::manual_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:267:29 [INFO] [stdout] | [INFO] [stdout] 267 | (0b0100, 0b010, 0b00 | 0b001 | 0b010) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `0b00..=0b010` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:272:29 [INFO] [stdout] | [INFO] [stdout] 272 | (0b0100, 0b011, 0b00 | 0b001 | 0b010) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `0b00..=0b010` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:415:25 [INFO] [stdout] | [INFO] [stdout] 415 | (0b1011, _, 0b100 | 0b101 | 0b110) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `0b100..=0b110` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/v2/vm_68k.rs:561:21 [INFO] [stdout] | [INFO] [stdout] 561 | Less => (n && !v && !z) || (!n && v && !z), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 561 - Less => (n && !v && !z) || (!n && v && !z), [INFO] [stdout] 561 + Less => !(z || n && v || !n && !v), [INFO] [stdout] | [INFO] [stdout] 561 - Less => (n && !v && !z) || (!n && v && !z), [INFO] [stdout] 561 + Less => (v || n) && (!v || !n) && !z, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/v2/vm_68k.rs:562:24 [INFO] [stdout] | [INFO] [stdout] 562 | Greater => (n && v && !z) || (!n && !v && !z), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 562 - Greater => (n && v && !z) || (!n && !v && !z), [INFO] [stdout] 562 + Greater => !(z || !n && v || n && !v), [INFO] [stdout] | [INFO] [stdout] 562 - Greater => (n && v && !z) || (!n && !v && !z), [INFO] [stdout] 562 + Greater => (v || !n) && (!v || n) && !z, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i32` -> `i32`) [INFO] [stdout] --> src/v2/vm_68k.rs:794:29 [INFO] [stdout] | [INFO] [stdout] 794 | let value = self.mem_i32(self.pc) as i32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.mem_i32(self.pc)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `Range::contains` implementation [INFO] [stdout] --> src/v2/vm_68k.rs:1010:48 [INFO] [stdout] | [INFO] [stdout] 1010 | (EA::Immediate(x), EA::Data(d)) if (x < 128) && (x >= -128) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(-128..128).contains(&x)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/v2/ea.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / match self { [INFO] [stdout] 80 | | Self::Offset(_, _) [INFO] [stdout] 81 | | | Self::IdxData(_, _, _) [INFO] [stdout] 82 | | | Self::IdxAddr(_, _, _) [INFO] [stdout] ... | [INFO] [stdout] 87 | | _ => false, [INFO] [stdout] 88 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] = note: `#[warn(clippy::match_like_matches_macro)]` on by default [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 79 ~ matches!(self, Self::Offset(_, _) [INFO] [stdout] 80 + | Self::IdxData(_, _, _) [INFO] [stdout] 81 + | Self::IdxAddr(_, _, _) [INFO] [stdout] 82 + | Self::Absolute(_) [INFO] [stdout] 83 + | Self::PCOffset(_) [INFO] [stdout] 84 + | Self::PCIdxData(_, _) [INFO] [stdout] 85 + | Self::PCIdxAddr(_, _)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i16` -> `i16`) [INFO] [stdout] --> src/v2/ea.rs:179:32 [INFO] [stdout] | [INFO] [stdout] 179 | out.extend((o as i16).to_be_bytes()) [INFO] [stdout] | ^^^^^^^^^^ help: try: `o` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/v2/vm_68k.rs:1368:19 [INFO] [stdout] | [INFO] [stdout] 1368 | self.data(&str.as_bytes()) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `str.as_bytes()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ast.rs:457:43 [INFO] [stdout] | [INFO] [stdout] 457 | self.call_args(call.args, &vec![Ty::int(), Ty::int()])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&[Ty::int(), Ty::int()]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] = note: `#[warn(clippy::useless_vec)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ast.rs:462:43 [INFO] [stdout] | [INFO] [stdout] 462 | self.call_args(call.args, &vec![Ty::bool(), Ty::bool()])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&[Ty::bool(), Ty::bool()]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ast.rs:467:43 [INFO] [stdout] | [INFO] [stdout] 467 | self.call_args(call.args, &vec![Ty::string()])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&[Ty::string()]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/v2/memory5.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | if self.deref_offsets.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!self.deref_offsets.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/module.rs:116:25 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn script_scope(&mut self) -> StmtCompiler { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 116 | pub fn script_scope(&mut self) -> StmtCompiler<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/sub.rs:232:18 [INFO] [stdout] | [INFO] [stdout] 232 | fn begin_sub(&mut self, builder: SubBuilder) -> StmtCompiler { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 232 | fn begin_sub(&mut self, builder: SubBuilder) -> StmtCompiler<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:649:9 [INFO] [stdout] | [INFO] [stdout] 649 | return id; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 649 - return id; [INFO] [stdout] 649 + id [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:660:9 [INFO] [stdout] | [INFO] [stdout] 660 | return id; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 660 - return id; [INFO] [stdout] 660 + id [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:668:9 [INFO] [stdout] | [INFO] [stdout] 668 | return id; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 668 - return id; [INFO] [stdout] 668 + id [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/v2/memory5.rs:912:12 [INFO] [stdout] | [INFO] [stdout] 912 | if self.block_scopes.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.block_scopes.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/v2/memory5.rs:1093:9 [INFO] [stdout] | [INFO] [stdout] 1093 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1093 - return None; [INFO] [stdout] 1093 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/v2/memory5.rs:1081:13 [INFO] [stdout] | [INFO] [stdout] 1081 | / match item { [INFO] [stdout] 1082 | | Item::Storage(storage) => { [INFO] [stdout] 1083 | | if let Some(storage) = f(self, *storage, None) { [INFO] [stdout] 1084 | | *item = Item::Storage(storage); [INFO] [stdout] ... | [INFO] [stdout] 1089 | | _ => {} [INFO] [stdout] 1090 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 1081 ~ if let Item::Storage(storage) = item { [INFO] [stdout] 1082 + if let Some(storage) = f(self, *storage, None) { [INFO] [stdout] 1083 + *item = Item::Storage(storage); [INFO] [stdout] 1084 + self.stack = stack; [INFO] [stdout] 1085 + return Some(()); [INFO] [stdout] 1086 + } [INFO] [stdout] 1087 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/v2/register.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | / match self.rs[r.into()] { [INFO] [stdout] 123 | | RegisterUse::LastUsed(_) => true, [INFO] [stdout] 124 | | _ => false, [INFO] [stdout] 125 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 122 - match self.rs[r.into()] { [INFO] [stdout] 123 - RegisterUse::LastUsed(_) => true, [INFO] [stdout] 124 - _ => false, [INFO] [stdout] 125 - } [INFO] [stdout] 122 + matches!(self.rs[r.into()], RegisterUse::LastUsed(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/v2/register.rs:152:22 [INFO] [stdout] | [INFO] [stdout] 152 | spilled: match min.1 { [INFO] [stdout] | ______________________^ [INFO] [stdout] 153 | | RegisterUse::LastUsed(_) => true, [INFO] [stdout] 154 | | _ => false, [INFO] [stdout] 155 | | }, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 152 - spilled: match min.1 { [INFO] [stdout] 153 - RegisterUse::LastUsed(_) => true, [INFO] [stdout] 154 - _ => false, [INFO] [stdout] 155 - }, [INFO] [stdout] 152 + spilled: matches!(min.1, RegisterUse::LastUsed(_)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/v2/register.rs:221:9 [INFO] [stdout] | [INFO] [stdout] 221 | assert_eq!(r.spilled, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 221 - assert_eq!(r.spilled, false); [INFO] [stdout] 221 + assert!(!r.spilled); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/v2/register.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | assert_eq!(r.spilled, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 224 - assert_eq!(r.spilled, false); [INFO] [stdout] 224 + assert!(!r.spilled); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/v2/register.rs:228:9 [INFO] [stdout] | [INFO] [stdout] 228 | assert_eq!(r.spilled, true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 228 - assert_eq!(r.spilled, true); [INFO] [stdout] 228 + assert!(r.spilled); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/v2/register.rs:232:9 [INFO] [stdout] | [INFO] [stdout] 232 | assert_eq!(r.spilled, true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 232 - assert_eq!(r.spilled, true); [INFO] [stdout] 232 + assert!(r.spilled); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/v2/register.rs:238:9 [INFO] [stdout] | [INFO] [stdout] 238 | assert_eq!(r.spilled, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 238 - assert_eq!(r.spilled, false); [INFO] [stdout] 238 + assert!(!r.spilled); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/v2/register.rs:241:9 [INFO] [stdout] | [INFO] [stdout] 241 | assert_eq!(r.spilled, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 241 - assert_eq!(r.spilled, false); [INFO] [stdout] 241 + assert!(!r.spilled); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i32` -> `i32`) [INFO] [stdout] --> src/v2/toolbox.rs:351:28 [INFO] [stdout] | [INFO] [stdout] 351 | vm.load_memory(0, &(init_sp as i32).to_be_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `init_sp` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i32` -> `i32`) [INFO] [stdout] --> src/v2/toolbox.rs:352:28 [INFO] [stdout] | [INFO] [stdout] 352 | vm.load_memory(4, &(init_pc as i32).to_be_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `init_pc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:127:33 [INFO] [stdout] | [INFO] [stdout] 127 | (0b0000, 0..=0b110, 0b00 | 0b001 | 0b010) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `0b00..=0b010` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] = note: `#[warn(clippy::manual_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:267:29 [INFO] [stdout] | [INFO] [stdout] 267 | (0b0100, 0b010, 0b00 | 0b001 | 0b010) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `0b00..=0b010` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:272:29 [INFO] [stdout] | [INFO] [stdout] 272 | (0b0100, 0b011, 0b00 | 0b001 | 0b010) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `0b00..=0b010` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this OR pattern can be rewritten using a range [INFO] [stdout] --> src/v2/vm_68k.rs:415:25 [INFO] [stdout] | [INFO] [stdout] 415 | (0b1011, _, 0b100 | 0b101 | 0b110) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `0b100..=0b110` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_patterns [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/v2/vm_68k.rs:561:21 [INFO] [stdout] | [INFO] [stdout] 561 | Less => (n && !v && !z) || (!n && v && !z), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 561 - Less => (n && !v && !z) || (!n && v && !z), [INFO] [stdout] 561 + Less => !(z || n && v || !n && !v), [INFO] [stdout] | [INFO] [stdout] 561 - Less => (n && !v && !z) || (!n && v && !z), [INFO] [stdout] 561 + Less => (v || n) && (!v || !n) && !z, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/v2/vm_68k.rs:562:24 [INFO] [stdout] | [INFO] [stdout] 562 | Greater => (n && v && !z) || (!n && !v && !z), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 562 - Greater => (n && v && !z) || (!n && !v && !z), [INFO] [stdout] 562 + Greater => !(z || !n && v || n && !v), [INFO] [stdout] | [INFO] [stdout] 562 - Greater => (n && v && !z) || (!n && !v && !z), [INFO] [stdout] 562 + Greater => (v || !n) && (!v || n) && !z, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i32` -> `i32`) [INFO] [stdout] --> src/v2/vm_68k.rs:794:29 [INFO] [stdout] | [INFO] [stdout] 794 | let value = self.mem_i32(self.pc) as i32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.mem_i32(self.pc)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `Range::contains` implementation [INFO] [stdout] --> src/v2/vm_68k.rs:1010:48 [INFO] [stdout] | [INFO] [stdout] 1010 | (EA::Immediate(x), EA::Data(d)) if (x < 128) && (x >= -128) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(-128..128).contains(&x)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/v2/vm_68k.rs:1368:19 [INFO] [stdout] | [INFO] [stdout] 1368 | self.data(&str.as_bytes()) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `str.as_bytes()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ast.rs:457:43 [INFO] [stdout] | [INFO] [stdout] 457 | self.call_args(call.args, &vec![Ty::int(), Ty::int()])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&[Ty::int(), Ty::int()]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] = note: `#[warn(clippy::useless_vec)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ast.rs:462:43 [INFO] [stdout] | [INFO] [stdout] 462 | self.call_args(call.args, &vec![Ty::bool(), Ty::bool()])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&[Ty::bool(), Ty::bool()]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ast.rs:467:43 [INFO] [stdout] | [INFO] [stdout] 467 | self.call_args(call.args, &vec![Ty::string()])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&[Ty::string()]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/v2/ea.rs:239:21 [INFO] [stdout] | [INFO] [stdout] 239 | let sizes = vec![Size::Byte, Size::Short, Size::Long]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `[Size::Byte, Size::Short, Size::Long]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/module.rs:116:25 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn script_scope(&mut self) -> StmtCompiler { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 116 | pub fn script_scope(&mut self) -> StmtCompiler<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/sub.rs:232:18 [INFO] [stdout] | [INFO] [stdout] 232 | fn begin_sub(&mut self, builder: SubBuilder) -> StmtCompiler { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 232 | fn begin_sub(&mut self, builder: SubBuilder) -> StmtCompiler<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.62s [INFO] running `Command { std: "docker" "inspect" "d35d6338e90c0531f2cab6731b4991cd5ac3735823f9ed1cdff857af150da8bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d35d6338e90c0531f2cab6731b4991cd5ac3735823f9ed1cdff857af150da8bc", kill_on_drop: false }` [INFO] [stdout] d35d6338e90c0531f2cab6731b4991cd5ac3735823f9ed1cdff857af150da8bc