[INFO] fetching crate fantasy-cpu-emulator 0.1.1... [INFO] checking fantasy-cpu-emulator-0.1.1 against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] extracting crate fantasy-cpu-emulator 0.1.1 into /workspace/builds/worker-6-tc1/source [INFO] validating manifest of crates.io crate fantasy-cpu-emulator 0.1.1 on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate fantasy-cpu-emulator 0.1.1 [INFO] finished tweaking crates.io crate fantasy-cpu-emulator 0.1.1 [INFO] tweaked toml for crates.io crate fantasy-cpu-emulator 0.1.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate crates.io crate fantasy-cpu-emulator 0.1.1 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: only one of `license` or `license-file` is necessary [INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression. [INFO] [stderr] `license-file` should be used if the package uses a non-standard license. [INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information. [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded unicode-width v0.1.8 [INFO] [stderr] Downloaded getopts v0.2.21 [INFO] [stderr] Downloaded unicode-xid v0.2.1 [INFO] [stderr] Downloaded fantasy-cpu-emulator-macros v0.1.0 [INFO] [stderr] Downloaded quote v1.0.7 [INFO] [stderr] Downloaded proc-macro2 v1.0.19 [INFO] [stderr] Downloaded syn v1.0.39 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 62e41afaa7669f101c7640c6434c214452029e09db188e0d85aee9e0aef2d99c [INFO] running `Command { std: "docker" "start" "-a" "62e41afaa7669f101c7640c6434c214452029e09db188e0d85aee9e0aef2d99c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "62e41afaa7669f101c7640c6434c214452029e09db188e0d85aee9e0aef2d99c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "62e41afaa7669f101c7640c6434c214452029e09db188e0d85aee9e0aef2d99c", kill_on_drop: false }` [INFO] [stdout] 62e41afaa7669f101c7640c6434c214452029e09db188e0d85aee9e0aef2d99c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8e4de9121d1514d1ba66c1924d56c94f704bbb4751a2dca7cd718fefa28f0f72 [INFO] running `Command { std: "docker" "start" "-a" "8e4de9121d1514d1ba66c1924d56c94f704bbb4751a2dca7cd718fefa28f0f72", kill_on_drop: false }` [INFO] [stderr] warning: only one of `license` or `license-file` is necessary [INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression. [INFO] [stderr] `license-file` should be used if the package uses a non-standard license. [INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information. [INFO] [stderr] Compiling proc-macro2 v1.0.19 [INFO] [stderr] Compiling syn v1.0.39 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Checking getopts v0.2.21 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling fantasy-cpu-emulator-macros v0.1.0 [INFO] [stderr] Checking fantasy-cpu-emulator v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[macro_use] extern crate quote; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/potato.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `write_out_state in WriteOutState = super` [INFO] [stdout] --> src/potato.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `potato::potato_chip` [INFO] [stdout] --> src/lib.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use potato::potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 33 - if (forward_by > 0) { [INFO] [stdout] 33 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 37 - if (progress != 0) { [INFO] [stdout] 37 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 73 - (from & ((1 << 36) - 1)) [INFO] [stdout] 73 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/unpipelined_potato.rs:77:20 [INFO] [stdout] | [INFO] [stdout] 77 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - let test_bit = (1 << 35); [INFO] [stdout] 77 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 88 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 88 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/unpipelined_potato.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `decode in Decode = super` [INFO] [stdout] --> src/unpipelined_potato.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `unpipelined_potato::unpipelined_potato_chip` [INFO] [stdout] --> src/lib.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use unpipelined_potato::unpipelined_potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - if (forward_by > 0) { [INFO] [stdout] 51 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:62:14 [INFO] [stdout] | [INFO] [stdout] 62 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - if (progress != 0) { [INFO] [stdout] 62 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - (from & ((1 << 36) - 1)) [INFO] [stdout] 139 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/jackfruit.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - let test_bit = (1 << 35); [INFO] [stdout] 143 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 154 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 154 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:784:7 [INFO] [stdout] | [INFO] [stdout] 784 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 784 - (1 << 35) [INFO] [stdout] 784 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:817:7 [INFO] [stdout] | [INFO] [stdout] 817 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 817 - (1 << 35) [INFO] [stdout] 817 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:954:4 [INFO] [stdout] | [INFO] [stdout] 954 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:959:4 [INFO] [stdout] | [INFO] [stdout] 959 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:964:4 [INFO] [stdout] | [INFO] [stdout] 964 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1035:36 [INFO] [stdout] | [INFO] [stdout] 1035 | Arg::Lit(num) => (num.to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1035 - Arg::Lit(num) => (num.to_string()), [INFO] [stdout] 1035 + Arg::Lit(num) => num.to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1036:36 [INFO] [stdout] | [INFO] [stdout] 1036 | Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1036 - Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] 1036 + Arg::Pos(pos) => locations.get(pos).unwrap().to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1037:36 [INFO] [stdout] | [INFO] [stdout] 1037 | Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1037 - Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] 1037 + Arg::Offset(pos, off) => ((*locations.get(pos).unwrap() as i64) + off).to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `jackfruit::jackfruit_chip` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use jackfruit::jackfruit_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[macro_use] extern crate quote; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/potato.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `write_out_state in WriteOutState = super` [INFO] [stdout] --> src/potato.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `potato::potato_chip` [INFO] [stdout] --> src/lib.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use potato::potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 33 - if (forward_by > 0) { [INFO] [stdout] 33 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 37 - if (progress != 0) { [INFO] [stdout] 37 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 73 - (from & ((1 << 36) - 1)) [INFO] [stdout] 73 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/unpipelined_potato.rs:77:20 [INFO] [stdout] | [INFO] [stdout] 77 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - let test_bit = (1 << 35); [INFO] [stdout] 77 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 88 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 88 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/unpipelined_potato.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `decode in Decode = super` [INFO] [stdout] --> src/unpipelined_potato.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `unpipelined_potato::unpipelined_potato_chip` [INFO] [stdout] --> src/lib.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use unpipelined_potato::unpipelined_potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - if (forward_by > 0) { [INFO] [stdout] 51 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:62:14 [INFO] [stdout] | [INFO] [stdout] 62 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - if (progress != 0) { [INFO] [stdout] 62 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - (from & ((1 << 36) - 1)) [INFO] [stdout] 139 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/jackfruit.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - let test_bit = (1 << 35); [INFO] [stdout] 143 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 154 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 154 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:784:7 [INFO] [stdout] | [INFO] [stdout] 784 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 784 - (1 << 35) [INFO] [stdout] 784 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:817:7 [INFO] [stdout] | [INFO] [stdout] 817 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 817 - (1 << 35) [INFO] [stdout] 817 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:954:4 [INFO] [stdout] | [INFO] [stdout] 954 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:959:4 [INFO] [stdout] | [INFO] [stdout] 959 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:964:4 [INFO] [stdout] | [INFO] [stdout] 964 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1035:36 [INFO] [stdout] | [INFO] [stdout] 1035 | Arg::Lit(num) => (num.to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1035 - Arg::Lit(num) => (num.to_string()), [INFO] [stdout] 1035 + Arg::Lit(num) => num.to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1036:36 [INFO] [stdout] | [INFO] [stdout] 1036 | Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1036 - Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] 1036 + Arg::Pos(pos) => locations.get(pos).unwrap().to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1037:36 [INFO] [stdout] | [INFO] [stdout] 1037 | Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1037 - Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] 1037 + Arg::Offset(pos, off) => ((*locations.get(pos).unwrap() as i64) + off).to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `jackfruit::jackfruit_chip` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use jackfruit::jackfruit_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/potato.rs:23:26 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fetched` [INFO] [stdout] --> src/potato.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fetched` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/potato.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `assign_architectural_registers` [INFO] [stdout] --> src/potato.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_assign_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by` [INFO] [stdout] --> src/potato.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:97:50 [INFO] [stdout] | [INFO] [stdout] 97 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:102:46 [INFO] [stdout] | [INFO] [stdout] 102 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:225:86 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:225:89 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:357:10 [INFO] [stdout] | [INFO] [stdout] 357 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:492:10 [INFO] [stdout] | [INFO] [stdout] 492 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:546:13 [INFO] [stdout] | [INFO] [stdout] 546 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:623:86 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:623:89 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StateBundle` is never constructed [INFO] [stdout] --> src/potato.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct StateBundle { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryWrite` is never constructed [INFO] [stdout] --> src/potato.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct MemoryWrite { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch` is never used [INFO] [stdout] --> src/potato.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn fetch(mem: &Memories::t, input: U10) -> U36 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_out_state` is never used [INFO] [stdout] --> src/potato.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tick` is never used [INFO] [stdout] --> src/potato.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:60:238 [INFO] [stdout] | [INFO] [stdout] 60 | ...ions::Nop{}) => { Instruction::Nop(Nop{}) } -> Nop -> pub struct Nop {}, Compute <- 2 super::MemoryToArchitecturalRegisters::Instructi... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Nop` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/potato.rs:51:14 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/potato.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `MemoryToArchitecturalRegisters` should have a snake case name [INFO] [stdout] --> src/potato.rs:53:41 [INFO] [stdout] | [INFO] [stdout] 53 | - memory_to_architecture_registers in MemoryToArchitecturalRegisters: super::super::Instruction -> Instruction [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `memory_to_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Compute` should have a snake case name [INFO] [stdout] --> src/potato.rs:54:16 [INFO] [stdout] | [INFO] [stdout] 54 | - compute in Compute: super::MemoryToArchitecturalRegisters::Instruction -> super::super::StateBundle [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `compute` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `WriteOutState` should have a snake case name [INFO] [stdout] --> src/potato.rs:55:24 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `write_out_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/unpipelined_potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:97:10 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:120:14 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:122:17 [INFO] [stdout] | [INFO] [stdout] 122 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/jackfruit.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 21 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 21 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:163:10 [INFO] [stdout] | [INFO] [stdout] 163 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:197:14 [INFO] [stdout] | [INFO] [stdout] 197 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `CheckStall` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:199:20 [INFO] [stdout] | [INFO] [stdout] 199 | - check_stall in CheckStall: super::super::MachineState -> super::super::Work [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `check_stall` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 69 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/potato.rs:23:26 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fetched` [INFO] [stdout] --> src/potato.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fetched` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/potato.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `assign_architectural_registers` [INFO] [stdout] --> src/potato.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_assign_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by` [INFO] [stdout] --> src/potato.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:97:50 [INFO] [stdout] | [INFO] [stdout] 97 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:102:46 [INFO] [stdout] | [INFO] [stdout] 102 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:225:86 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:225:89 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:357:10 [INFO] [stdout] | [INFO] [stdout] 357 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:492:10 [INFO] [stdout] | [INFO] [stdout] 492 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:546:13 [INFO] [stdout] | [INFO] [stdout] 546 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:623:86 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:623:89 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StateBundle` is never constructed [INFO] [stdout] --> src/potato.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct StateBundle { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryWrite` is never constructed [INFO] [stdout] --> src/potato.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct MemoryWrite { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch` is never used [INFO] [stdout] --> src/potato.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn fetch(mem: &Memories::t, input: U10) -> U36 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_out_state` is never used [INFO] [stdout] --> src/potato.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tick` is never used [INFO] [stdout] --> src/potato.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:60:238 [INFO] [stdout] | [INFO] [stdout] 60 | ...ions::Nop{}) => { Instruction::Nop(Nop{}) } -> Nop -> pub struct Nop {}, Compute <- 2 super::MemoryToArchitecturalRegisters::Instructi... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Nop` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `MachineState` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | type MachineState = (Instruction, Memories::t); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Fetching` and `Computing` are never constructed [INFO] [stdout] --> src/unpipelined_potato.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum Work { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 13 | Fetching{ progress: u32, mem: Memories::t,}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | Computing{ progress: u32, instruction: Instruction, mem: Memories::t,}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Work` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn fetch(mem: &Memories::t, input: U10) -> U36 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_mem` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn get_mem(work: Work) -> Memories::t { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_tick` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn begin_tick(forward_by: u32, mem: Memories::t) -> Work { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tick` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn tick(forward_by: u32, working: Work) -> Work { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u36_to_u64` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn u36_to_u64(from: U36) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u64_to_u36` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn u64_to_u36(from: u64) -> U36 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u36_to_i64` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:75:10 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn u36_to_i64(from: U36) -> i64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `i64_to_u36` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:85:10 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn i64_to_u36(from: i64) -> U36 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:97:10 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/potato.rs:51:14 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/potato.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `MemoryToArchitecturalRegisters` should have a snake case name [INFO] [stdout] --> src/potato.rs:53:41 [INFO] [stdout] | [INFO] [stdout] 53 | - memory_to_architecture_registers in MemoryToArchitecturalRegisters: super::super::Instruction -> Instruction [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `memory_to_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Compute` should have a snake case name [INFO] [stdout] --> src/potato.rs:54:16 [INFO] [stdout] | [INFO] [stdout] 54 | - compute in Compute: super::MemoryToArchitecturalRegisters::Instruction -> super::super::StateBundle [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `compute` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `WriteOutState` should have a snake case name [INFO] [stdout] --> src/potato.rs:55:24 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `write_out_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/unpipelined_potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:97:10 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:120:14 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:122:17 [INFO] [stdout] | [INFO] [stdout] 122 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/jackfruit.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 21 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 21 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:163:10 [INFO] [stdout] | [INFO] [stdout] 163 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:197:14 [INFO] [stdout] | [INFO] [stdout] 197 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `CheckStall` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:199:20 [INFO] [stdout] | [INFO] [stdout] 199 | - check_stall in CheckStall: super::super::MachineState -> super::super::Work [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `check_stall` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 81 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fantasy_cpu_emulator::jackfruit` [INFO] [stdout] --> src/bin/fantasy_emulator.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use fantasy_cpu_emulator::jackfruit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Matches` [INFO] [stdout] --> src/bin/fantasy_assembler.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use getopts::{Options,Matches}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Matches` [INFO] [stdout] --> src/bin/fantasy_assembler.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use getopts::{Options,Matches}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fantasy_cpu_emulator::jackfruit` [INFO] [stdout] --> src/bin/fantasy_emulator.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use fantasy_cpu_emulator::jackfruit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.35s [INFO] running `Command { std: "docker" "inspect" "8e4de9121d1514d1ba66c1924d56c94f704bbb4751a2dca7cd718fefa28f0f72", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8e4de9121d1514d1ba66c1924d56c94f704bbb4751a2dca7cd718fefa28f0f72", kill_on_drop: false }` [INFO] [stdout] 8e4de9121d1514d1ba66c1924d56c94f704bbb4751a2dca7cd718fefa28f0f72 [INFO] checking fantasy-cpu-emulator-0.1.1 against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] extracting crate fantasy-cpu-emulator 0.1.1 into /workspace/builds/worker-6-tc2/source [INFO] validating manifest of crates.io crate fantasy-cpu-emulator 0.1.1 on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate fantasy-cpu-emulator 0.1.1 [INFO] finished tweaking crates.io crate fantasy-cpu-emulator 0.1.1 [INFO] tweaked toml for crates.io crate fantasy-cpu-emulator 0.1.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] crate crates.io crate fantasy-cpu-emulator 0.1.1 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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: only one of `license` or `license-file` is necessary [INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression. [INFO] [stderr] `license-file` should be used if the package uses a non-standard license. [INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information. [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a4372036cac4d20604cf718ad8e2f3cc3d8cc14433026c843c63bfdd4951d52b [INFO] running `Command { std: "docker" "start" "-a" "a4372036cac4d20604cf718ad8e2f3cc3d8cc14433026c843c63bfdd4951d52b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a4372036cac4d20604cf718ad8e2f3cc3d8cc14433026c843c63bfdd4951d52b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4372036cac4d20604cf718ad8e2f3cc3d8cc14433026c843c63bfdd4951d52b", kill_on_drop: false }` [INFO] [stdout] a4372036cac4d20604cf718ad8e2f3cc3d8cc14433026c843c63bfdd4951d52b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 44d07bb964bc6a3713a0edd94da08e900659bf53b07b7023bf1d8595b035ee1c [INFO] running `Command { std: "docker" "start" "-a" "44d07bb964bc6a3713a0edd94da08e900659bf53b07b7023bf1d8595b035ee1c", kill_on_drop: false }` [INFO] [stderr] warning: only one of `license` or `license-file` is necessary [INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression. [INFO] [stderr] `license-file` should be used if the package uses a non-standard license. [INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information. [INFO] [stderr] Compiling proc-macro2 v1.0.19 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.39 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Checking getopts v0.2.21 [INFO] [stderr] Checking quote v1.0.7 [INFO] [stderr] Compiling fantasy-cpu-emulator-macros v0.1.0 [INFO] [stderr] Checking fantasy-cpu-emulator v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[macro_use] extern crate quote; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/potato.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `write_out_state in WriteOutState = super` [INFO] [stdout] --> src/potato.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `potato::potato_chip` [INFO] [stdout] --> src/lib.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use potato::potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 33 - if (forward_by > 0) { [INFO] [stdout] 33 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 37 - if (progress != 0) { [INFO] [stdout] 37 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 73 - (from & ((1 << 36) - 1)) [INFO] [stdout] 73 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/unpipelined_potato.rs:77:20 [INFO] [stdout] | [INFO] [stdout] 77 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - let test_bit = (1 << 35); [INFO] [stdout] 77 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 88 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 88 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/unpipelined_potato.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `decode in Decode = super` [INFO] [stdout] --> src/unpipelined_potato.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `unpipelined_potato::unpipelined_potato_chip` [INFO] [stdout] --> src/lib.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use unpipelined_potato::unpipelined_potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - if (forward_by > 0) { [INFO] [stdout] 51 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:62:14 [INFO] [stdout] | [INFO] [stdout] 62 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - if (progress != 0) { [INFO] [stdout] 62 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - (from & ((1 << 36) - 1)) [INFO] [stdout] 139 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/jackfruit.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - let test_bit = (1 << 35); [INFO] [stdout] 143 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 154 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 154 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:784:7 [INFO] [stdout] | [INFO] [stdout] 784 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 784 - (1 << 35) [INFO] [stdout] 784 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:817:7 [INFO] [stdout] | [INFO] [stdout] 817 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 817 - (1 << 35) [INFO] [stdout] 817 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:954:4 [INFO] [stdout] | [INFO] [stdout] 954 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:959:4 [INFO] [stdout] | [INFO] [stdout] 959 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:964:4 [INFO] [stdout] | [INFO] [stdout] 964 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1035:36 [INFO] [stdout] | [INFO] [stdout] 1035 | Arg::Lit(num) => (num.to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1035 - Arg::Lit(num) => (num.to_string()), [INFO] [stdout] 1035 + Arg::Lit(num) => num.to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1036:36 [INFO] [stdout] | [INFO] [stdout] 1036 | Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1036 - Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] 1036 + Arg::Pos(pos) => locations.get(pos).unwrap().to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1037:36 [INFO] [stdout] | [INFO] [stdout] 1037 | Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1037 - Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] 1037 + Arg::Offset(pos, off) => ((*locations.get(pos).unwrap() as i64) + off).to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `jackfruit::jackfruit_chip` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use jackfruit::jackfruit_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[macro_use] extern crate quote; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/potato.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `write_out_state in WriteOutState = super` [INFO] [stdout] --> src/potato.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `potato::potato_chip` [INFO] [stdout] --> src/lib.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use potato::potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 33 - if (forward_by > 0) { [INFO] [stdout] 33 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/unpipelined_potato.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 37 - if (progress != 0) { [INFO] [stdout] 37 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 73 - (from & ((1 << 36) - 1)) [INFO] [stdout] 73 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/unpipelined_potato.rs:77:20 [INFO] [stdout] | [INFO] [stdout] 77 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - let test_bit = (1 << 35); [INFO] [stdout] 77 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/unpipelined_potato.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 88 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 88 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fetch in Fetch = super` [INFO] [stdout] --> src/unpipelined_potato.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `decode in Decode = super` [INFO] [stdout] --> src/unpipelined_potato.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `unpipelined_potato::unpipelined_potato_chip` [INFO] [stdout] --> src/lib.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use unpipelined_potato::unpipelined_potato_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | if (forward_by > 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 51 - if (forward_by > 0) { [INFO] [stdout] 51 + if forward_by > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/jackfruit.rs:62:14 [INFO] [stdout] | [INFO] [stdout] 62 | if (progress != 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 62 - if (progress != 0) { [INFO] [stdout] 62 + if progress != 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | (from & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - (from & ((1 << 36) - 1)) [INFO] [stdout] 139 + from & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/jackfruit.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | let test_bit = (1 << 35); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - let test_bit = (1 << 35); [INFO] [stdout] 143 + let test_bit = 1 << 35; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 154 - (u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1)) [INFO] [stdout] 154 + u64::from_ne_bytes(i64::to_ne_bytes(from)) & ((1 << 36) - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:784:7 [INFO] [stdout] | [INFO] [stdout] 784 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 784 - (1 << 35) [INFO] [stdout] 784 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/jackfruit.rs:817:7 [INFO] [stdout] | [INFO] [stdout] 817 | (1 << 35) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 817 - (1 << 35) [INFO] [stdout] 817 + 1 << 35 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:954:4 [INFO] [stdout] | [INFO] [stdout] 954 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:959:4 [INFO] [stdout] | [INFO] [stdout] 959 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/jackfruit.rs:964:4 [INFO] [stdout] | [INFO] [stdout] 964 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1035:36 [INFO] [stdout] | [INFO] [stdout] 1035 | Arg::Lit(num) => (num.to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1035 - Arg::Lit(num) => (num.to_string()), [INFO] [stdout] 1035 + Arg::Lit(num) => num.to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1036:36 [INFO] [stdout] | [INFO] [stdout] 1036 | Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1036 - Arg::Pos(pos) => (locations.get(pos).unwrap().to_string()), [INFO] [stdout] 1036 + Arg::Pos(pos) => locations.get(pos).unwrap().to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/jackfruit.rs:1037:36 [INFO] [stdout] | [INFO] [stdout] 1037 | Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1037 - Arg::Offset(pos, off) => (((*locations.get(pos).unwrap() as i64) + off).to_string()), [INFO] [stdout] 1037 + Arg::Offset(pos, off) => ((*locations.get(pos).unwrap() as i64) + off).to_string(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `jackfruit::jackfruit_chip` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use jackfruit::jackfruit_chip; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/potato.rs:23:26 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fetched` [INFO] [stdout] --> src/potato.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fetched` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/potato.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `assign_architectural_registers` [INFO] [stdout] --> src/potato.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_assign_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by` [INFO] [stdout] --> src/potato.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:97:50 [INFO] [stdout] | [INFO] [stdout] 97 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:102:46 [INFO] [stdout] | [INFO] [stdout] 102 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:225:86 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:225:89 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:357:10 [INFO] [stdout] | [INFO] [stdout] 357 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:492:10 [INFO] [stdout] | [INFO] [stdout] 492 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:546:13 [INFO] [stdout] | [INFO] [stdout] 546 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:623:86 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:623:89 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StateBundle` is never constructed [INFO] [stdout] --> src/potato.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct StateBundle { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryWrite` is never constructed [INFO] [stdout] --> src/potato.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct MemoryWrite { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch` is never used [INFO] [stdout] --> src/potato.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn fetch(mem: &Memories::t, input: U10) -> U36 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_out_state` is never used [INFO] [stdout] --> src/potato.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tick` is never used [INFO] [stdout] --> src/potato.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:60:238 [INFO] [stdout] | [INFO] [stdout] 60 | ...ions::Nop{}) => { Instruction::Nop(Nop{}) } -> Nop -> pub struct Nop {}, Compute <- 2 super::MemoryToArchitecturalRegisters::Instructi... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Nop` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `MachineState` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | type MachineState = (Instruction, Memories::t); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Fetching` and `Computing` are never constructed [INFO] [stdout] --> src/unpipelined_potato.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum Work { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 13 | Fetching{ progress: u32, mem: Memories::t,}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | Computing{ progress: u32, instruction: Instruction, mem: Memories::t,}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Work` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn fetch(mem: &Memories::t, input: U10) -> U36 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_mem` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn get_mem(work: Work) -> Memories::t { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin_tick` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn begin_tick(forward_by: u32, mem: Memories::t) -> Work { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tick` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn tick(forward_by: u32, working: Work) -> Work { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u36_to_u64` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn u36_to_u64(from: U36) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u64_to_u36` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn u64_to_u36(from: u64) -> U36 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u36_to_i64` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:75:10 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn u36_to_i64(from: U36) -> i64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `i64_to_u36` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:85:10 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn i64_to_u36(from: i64) -> U36 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` is never used [INFO] [stdout] --> src/unpipelined_potato.rs:97:10 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/potato.rs:51:14 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/potato.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `MemoryToArchitecturalRegisters` should have a snake case name [INFO] [stdout] --> src/potato.rs:53:41 [INFO] [stdout] | [INFO] [stdout] 53 | - memory_to_architecture_registers in MemoryToArchitecturalRegisters: super::super::Instruction -> Instruction [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `memory_to_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Compute` should have a snake case name [INFO] [stdout] --> src/potato.rs:54:16 [INFO] [stdout] | [INFO] [stdout] 54 | - compute in Compute: super::MemoryToArchitecturalRegisters::Instruction -> super::super::StateBundle [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `compute` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `WriteOutState` should have a snake case name [INFO] [stdout] --> src/potato.rs:55:24 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `write_out_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/unpipelined_potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:97:10 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:120:14 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:122:17 [INFO] [stdout] | [INFO] [stdout] 122 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/jackfruit.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 21 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 21 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:163:10 [INFO] [stdout] | [INFO] [stdout] 163 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:197:14 [INFO] [stdout] | [INFO] [stdout] 197 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `CheckStall` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:199:20 [INFO] [stdout] | [INFO] [stdout] 199 | - check_stall in CheckStall: super::super::MachineState -> super::super::Work [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `check_stall` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/potato.rs:23:26 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fetched` [INFO] [stdout] --> src/potato.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fetched` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/potato.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `assign_architectural_registers` [INFO] [stdout] --> src/potato.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_assign_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by` [INFO] [stdout] --> src/potato.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut fetched = fetch(&mem, mem.registers.ip); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut decoded = match pipeline_outputs.0 { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/potato.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let mut assign_architectural_registers = match pipeline_outputs.1 { [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 81 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:97:50 [INFO] [stdout] | [INFO] [stdout] 97 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forward_by_2` [INFO] [stdout] --> src/jackfruit.rs:102:46 [INFO] [stdout] | [INFO] [stdout] 102 | Work::StalledComputing { forward_by: forward_by_2, progress, instruction, mem, waiting_on } => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_by_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:225:86 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:225:89 [INFO] [stdout] | [INFO] [stdout] 225 | } -> F *, BackEnd <- 1 (super::super::Instruction::F(super::super::Instructions::F{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:357:10 [INFO] [stdout] | [INFO] [stdout] 357 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/jackfruit.rs:492:10 [INFO] [stdout] | [INFO] [stdout] 492 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/jackfruit.rs:546:13 [INFO] [stdout] | [INFO] [stdout] 546 | let (m, n) = (u36_to_u64(fetch(&mems, a)), u36_to_u64(fetch(&mems, b))); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/jackfruit.rs:623:86 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `a: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/jackfruit.rs:623:89 [INFO] [stdout] | [INFO] [stdout] 623 | } -> T *, BackEnd <- 1 (super::super::Instruction::T(super::super::Instructions::T{a, b, c}), mems) => { let mut new_mems = mems; new_m... [INFO] [stdout] | ^ help: try ignoring the field: `b: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fantasy_cpu_emulator::jackfruit` [INFO] [stdout] --> src/bin/fantasy_emulator.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use fantasy_cpu_emulator::jackfruit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fantasy_cpu_emulator::jackfruit` [INFO] [stdout] --> src/bin/fantasy_emulator.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use fantasy_cpu_emulator::jackfruit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Matches` [INFO] [stdout] --> src/bin/fantasy_assembler.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use getopts::{Options,Matches}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Matches` [INFO] [stdout] --> src/bin/fantasy_assembler.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use getopts::{Options,Matches}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StateBundle` is never constructed [INFO] [stdout] --> src/potato.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct StateBundle { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryWrite` is never constructed [INFO] [stdout] --> src/potato.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct MemoryWrite { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch` is never used [INFO] [stdout] --> src/potato.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn fetch(mem: &Memories::t, input: U10) -> U36 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_out_state` is never used [INFO] [stdout] --> src/potato.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn write_out_state(input: StateBundle) -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tick` is never used [INFO] [stdout] --> src/potato.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn tick(forward_by: u64, mem: Memories::t, pipeline_outputs: (Option, Option, Option src/potato.rs:60:238 [INFO] [stdout] | [INFO] [stdout] 60 | ...ions::Nop{}) => { Instruction::Nop(Nop{}) } -> Nop -> pub struct Nop {}, Compute <- 2 super::MemoryToArchitecturalRegisters::Instructi... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Nop` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/potato.rs:51:14 [INFO] [stdout] | [INFO] [stdout] 51 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/potato.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `MemoryToArchitecturalRegisters` should have a snake case name [INFO] [stdout] --> src/potato.rs:53:41 [INFO] [stdout] | [INFO] [stdout] 53 | - memory_to_architecture_registers in MemoryToArchitecturalRegisters: super::super::Instruction -> Instruction [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `memory_to_architectural_registers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Compute` should have a snake case name [INFO] [stdout] --> src/potato.rs:54:16 [INFO] [stdout] | [INFO] [stdout] 54 | - compute in Compute: super::MemoryToArchitecturalRegisters::Instruction -> super::super::StateBundle [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `compute` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `WriteOutState` should have a snake case name [INFO] [stdout] --> src/potato.rs:55:24 [INFO] [stdout] | [INFO] [stdout] 55 | - write_out_state in WriteOutState = super::super::write_out_state [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `write_out_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/unpipelined_potato.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 19 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 19 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:97:10 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:120:14 [INFO] [stdout] | [INFO] [stdout] 120 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/unpipelined_potato.rs:122:17 [INFO] [stdout] | [INFO] [stdout] 122 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/jackfruit.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 21 - panic!(format!("fetch from outside of bounds: {}", input)); [INFO] [stdout] 21 + panic!("fetch from outside of bounds: {}", input); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampU` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:163:10 [INFO] [stdout] | [INFO] [stdout] 163 | pub fn clampU(from: u64, max: u64) -> u64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clampS` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn clampS(from: i64, max: i64, min: i64) -> i64 { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `clamp_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Fetch` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:197:14 [INFO] [stdout] | [INFO] [stdout] 197 | - fetch in Fetch = super::super::fetch [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `fetch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Decode` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | - decode in Decode = super::super::Instructions::decode [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `decode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `CheckStall` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:199:20 [INFO] [stdout] | [INFO] [stdout] 199 | - check_stall in CheckStall: super::super::MachineState -> super::super::Work [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `check_stall` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `BackEnd` should have a snake case name [INFO] [stdout] --> src/jackfruit.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | - back_end in BackEnd: super::super::MachineState -> super::super::Memories::t [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `back_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 69 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.67s [INFO] running `Command { std: "docker" "inspect" "44d07bb964bc6a3713a0edd94da08e900659bf53b07b7023bf1d8595b035ee1c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "44d07bb964bc6a3713a0edd94da08e900659bf53b07b7023bf1d8595b035ee1c", kill_on_drop: false }` [INFO] [stdout] 44d07bb964bc6a3713a0edd94da08e900659bf53b07b7023bf1d8595b035ee1c