[INFO] fetching crate arm64jit 0.3.15... [INFO] linting arm64jit-0.3.15 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate arm64jit 0.3.15 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate arm64jit 0.3.15 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate arm64jit 0.3.15 [INFO] tweaked toml for crates.io crate arm64jit 0.3.15 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate arm64jit 0.3.15 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 crates.io crate arm64jit 0.3.15 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] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded jit-core v0.1.8 [INFO] [stderr] Downloaded jit-macro v0.2.8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] beea74bb3f890c6d775b75d60517ad8965bc4fa0b27754613b45fae5d1b47778 [INFO] running `Command { std: "docker" "start" "-a" "beea74bb3f890c6d775b75d60517ad8965bc4fa0b27754613b45fae5d1b47778", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "beea74bb3f890c6d775b75d60517ad8965bc4fa0b27754613b45fae5d1b47778", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "beea74bb3f890c6d775b75d60517ad8965bc4fa0b27754613b45fae5d1b47778", kill_on_drop: false }` [INFO] [stdout] beea74bb3f890c6d775b75d60517ad8965bc4fa0b27754613b45fae5d1b47778 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 72258044d6435fe75b45849f8ccf7a5afa61bdf32a96a8c666045a2d46789024 [INFO] running `Command { std: "docker" "start" "-a" "72258044d6435fe75b45849f8ccf7a5afa61bdf32a96a8c666045a2d46789024", kill_on_drop: false }` [INFO] [stderr] Compiling zerocopy v0.8.39 [INFO] [stderr] Checking memchr v2.8.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking regex-syntax v0.8.10 [INFO] [stderr] Checking clap_builder v4.5.60 [INFO] [stderr] Checking jit-core v0.1.8 [INFO] [stderr] Checking bytemuck v1.25.0 [INFO] [stderr] Checking oorandom v11.1.5 [INFO] [stderr] Compiling syn v2.0.116 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking is-terminal v0.4.17 [INFO] [stderr] Checking serde_json v1.0.149 [INFO] [stderr] Checking regex-automata v0.4.14 [INFO] [stderr] Checking clap v4.5.60 [INFO] [stderr] Checking regex v1.12.3 [INFO] [stderr] Compiling zerocopy-derive v0.8.39 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling jit-macro v0.2.8 [INFO] [stderr] Checking arm64jit v0.3.15 (/opt/rustwide/workdir) [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stdout] warning: this function has too many arguments (12/7) [INFO] [stdout] --> src/generated_specs.rs:3270:1 [INFO] [stdout] | [INFO] [stdout] 3270 | / const fn make_spec( [INFO] [stdout] 3271 | | mnemonic: &'static str, [INFO] [stdout] 3272 | | variant: &'static str, [INFO] [stdout] 3273 | | opcode: u32, [INFO] [stdout] ... | [INFO] [stdout] 3282 | | gpr32_extend_compatibility: u64, [INFO] [stdout] 3283 | | ) -> EncodingSpec { [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i64` -> `i64`) [INFO] [stdout] --> src/asm.rs:331:29 [INFO] [stdout] | [INFO] [stdout] 331 | let from_page = ((from_words << 2) >> 12) as i64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((from_words << 2) >> 12)` [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: casting to the same type is unnecessary (`i64` -> `i64`) [INFO] [stdout] --> src/asm.rs:332:27 [INFO] [stdout] | [INFO] [stdout] 332 | let to_page = ((to_words << 2) >> 12) as i64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((to_words << 2) >> 12)` [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 function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | / pub fn encode_mnemonic_id_const_no_alias( [INFO] [stdout] 30 | | operands: &[Operand], [INFO] [stdout] 31 | | ) -> Result { [INFO] [stdout] | |_________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [INFO] [stdout] = note: `#[warn(clippy::double_must_use)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / pub fn encode_variant( [INFO] [stdout] 52 | | variant: VariantId, [INFO] [stdout] 53 | | operands: &[Operand], [INFO] [stdout] 54 | | ) -> Result { [INFO] [stdout] | |_________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / pub fn encode_variant_const( [INFO] [stdout] 68 | | operands: &[Operand], [INFO] [stdout] 69 | | ) -> Result { [INFO] [stdout] | |_________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [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/encode.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | / match generated::encode_variant(variant, operands) { [INFO] [stdout] 114 | | Ok(code) => return Ok(code), [INFO] [stdout] ... | [INFO] [stdout] 118 | | Err(_) => {} [INFO] [stdout] 119 | | } [INFO] [stdout] | |_____________^ help: try: `if let Ok(code) = generated::encode_variant(variant, operands) { return Ok(code) }` [INFO] [stdout] | [INFO] [stdout] = note: you might want to preserve the comments from inside the `match` [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] [INFO] [stdout] [INFO] [stdout] warning: this function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:164:1 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn encode(mnemonic: &str, operands: &[Operand]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> tests/spec_consistency.rs:247:20 [INFO] [stdout] | [INFO] [stdout] 247 | if (expected == "vector arrangement" && got == "immediate") [INFO] [stdout] | ____________________^ [INFO] [stdout] 248 | | || (expected == "vector lane" && got == "immediate") [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] 247 - if (expected == "vector arrangement" && got == "immediate") [INFO] [stdout] 248 - || (expected == "vector lane" && got == "immediate") [INFO] [stdout] 247 + if !(got != "immediate" || expected != "vector arrangement" && expected != "vector lane") [INFO] [stdout] | [INFO] [stdout] 247 - if (expected == "vector arrangement" && got == "immediate") [INFO] [stdout] 248 - || (expected == "vector lane" && got == "immediate") [INFO] [stdout] 247 + if (expected == "vector lane" || expected == "vector arrangement") && got == "immediate" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (12/7) [INFO] [stdout] --> src/generated_specs.rs:3270:1 [INFO] [stdout] | [INFO] [stdout] 3270 | / const fn make_spec( [INFO] [stdout] 3271 | | mnemonic: &'static str, [INFO] [stdout] 3272 | | variant: &'static str, [INFO] [stdout] 3273 | | opcode: u32, [INFO] [stdout] ... | [INFO] [stdout] 3282 | | gpr32_extend_compatibility: u64, [INFO] [stdout] 3283 | | ) -> EncodingSpec { [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`i64` -> `i64`) [INFO] [stdout] --> src/asm.rs:331:29 [INFO] [stdout] | [INFO] [stdout] 331 | let from_page = ((from_words << 2) >> 12) as i64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((from_words << 2) >> 12)` [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: casting to the same type is unnecessary (`i64` -> `i64`) [INFO] [stdout] --> src/asm.rs:332:27 [INFO] [stdout] | [INFO] [stdout] 332 | let to_page = ((to_words << 2) >> 12) as i64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((to_words << 2) >> 12)` [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 function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | / pub fn encode_mnemonic_id_const_no_alias( [INFO] [stdout] 30 | | operands: &[Operand], [INFO] [stdout] 31 | | ) -> Result { [INFO] [stdout] | |_________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [INFO] [stdout] = note: `#[warn(clippy::double_must_use)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / pub fn encode_variant( [INFO] [stdout] 52 | | variant: VariantId, [INFO] [stdout] 53 | | operands: &[Operand], [INFO] [stdout] 54 | | ) -> Result { [INFO] [stdout] | |_________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / pub fn encode_variant_const( [INFO] [stdout] 68 | | operands: &[Operand], [INFO] [stdout] 69 | | ) -> Result { [INFO] [stdout] | |_________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [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/encode.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | / match generated::encode_variant(variant, operands) { [INFO] [stdout] 114 | | Ok(code) => return Ok(code), [INFO] [stdout] ... | [INFO] [stdout] 118 | | Err(_) => {} [INFO] [stdout] 119 | | } [INFO] [stdout] | |_____________^ help: try: `if let Ok(code) = generated::encode_variant(variant, operands) { return Ok(code) }` [INFO] [stdout] | [INFO] [stdout] = note: you might want to preserve the comments from inside the `match` [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] [INFO] [stdout] [INFO] [stdout] warning: this function has a `#[must_use]` attribute with no message, but returns a type already marked as `#[must_use]` [INFO] [stdout] --> src/encode.rs:164:1 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn encode(mnemonic: &str, operands: &[Operand]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: either add some descriptive message or remove the attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.30s [INFO] running `Command { std: "docker" "inspect" "72258044d6435fe75b45849f8ccf7a5afa61bdf32a96a8c666045a2d46789024", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "72258044d6435fe75b45849f8ccf7a5afa61bdf32a96a8c666045a2d46789024", kill_on_drop: false }` [INFO] [stdout] 72258044d6435fe75b45849f8ccf7a5afa61bdf32a96a8c666045a2d46789024