[INFO] cloning repository https://github.com/LorenzoEvans/N2T [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LorenzoEvans/N2T" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLorenzoEvans%2FN2T", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLorenzoEvans%2FN2T'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 99880b5ee4b3434a86cf362571053c4ca3e9bfee [INFO] testing LorenzoEvans/N2T against master#8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e for pr-74409 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLorenzoEvans%2FN2T" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/LorenzoEvans/N2T on toolchain 8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/LorenzoEvans/N2T [INFO] finished tweaking git repo https://github.com/LorenzoEvans/N2T [INFO] tweaked toml for git repo https://github.com/LorenzoEvans/N2T written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/LorenzoEvans/N2T already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] a7bf8fc22e35982ea3e7931b9fcb07932c0c2634ba8aaaa9b1b6661ae798a94d [INFO] running `Command { std: "docker" "start" "-a" "a7bf8fc22e35982ea3e7931b9fcb07932c0c2634ba8aaaa9b1b6661ae798a94d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a7bf8fc22e35982ea3e7931b9fcb07932c0c2634ba8aaaa9b1b6661ae798a94d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7bf8fc22e35982ea3e7931b9fcb07932c0c2634ba8aaaa9b1b6661ae798a94d", kill_on_drop: false }` [INFO] [stdout] a7bf8fc22e35982ea3e7931b9fcb07932c0c2634ba8aaaa9b1b6661ae798a94d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 6215be08a9228eee43bcf19826cf2451c8a35efa5dcfc33532a45fcdd40f3841 [INFO] running `Command { std: "docker" "start" "-a" "6215be08a9228eee43bcf19826cf2451c8a35efa5dcfc33532a45fcdd40f3841", kill_on_drop: false }` [INFO] [stderr] Compiling nand2_tetris v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::cell::Cell` [INFO] [stdout] --> src/ALU.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::Cell; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::option::Option` [INFO] [stdout] --> src/ALU.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | use std::option::Option; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `and_16`, `dmux_4w`, `dmux_8w`, `dmux`, `mux_16_4w`, `mux_16_8w`, `mux_16`, `mux`, `nand`, `or_16`, `or_8w`, `or_nand`, `or`, `xor` [INFO] [stdout] --> src/ALU.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::l_g::l_g::{nand, [INFO] [stdout] | ^^^^ [INFO] [stdout] 5 | or_nand, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 6 | and, [INFO] [stdout] 7 | and_16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | or, [INFO] [stdout] | ^^ [INFO] [stdout] 9 | or_16, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | or_8w, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | mux, [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | mux_16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 13 | mux_16_4w, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | mux_16_8w, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 15 | dmux, [INFO] [stdout] | ^^^^ [INFO] [stdout] 16 | dmux_4w, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | dmux_8w, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | xor, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `carry` is never read [INFO] [stdout] --> src/ALU.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let mut carry = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/ALU.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let mut result: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/ALU.rs:172:17 [INFO] [stdout] | [INFO] [stdout] 172 | let mut y: [i32; 16] = [0; 16]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/ALU.rs:169:30 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn z_x(&mut self, x: [i32;16]) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/ALU.rs:202:31 [INFO] [stdout] | [INFO] [stdout] 202 | pub fn z_y(&mut self, y: [i32;16]) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `carry` is never read [INFO] [stdout] --> src/ALU.rs:237:25 [INFO] [stdout] | [INFO] [stdout] 237 | let mut carry = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ALU.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let mut result: Vec = Vec::new(); [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/ALU.rs:172:17 [INFO] [stdout] | [INFO] [stdout] 172 | let mut y: [i32; 16] = [0; 16]; [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/ALU.rs:278:17 [INFO] [stdout] | [INFO] [stdout] 278 | let mut z_b: [i32;16] = [0;16]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `ALU` should have a snake case name [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod ALU; [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `alu` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `ALU` should have a snake case name [INFO] [stdout] --> src/ALU.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod ALU { [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `alu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.04s [INFO] running `Command { std: "docker" "inspect" "6215be08a9228eee43bcf19826cf2451c8a35efa5dcfc33532a45fcdd40f3841", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6215be08a9228eee43bcf19826cf2451c8a35efa5dcfc33532a45fcdd40f3841", kill_on_drop: false }` [INFO] [stdout] 6215be08a9228eee43bcf19826cf2451c8a35efa5dcfc33532a45fcdd40f3841 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:38e1b949b06cde1964af550a6e548bd9b2b2ea170003ae122f8fc0886596cc07" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 280c8559e78b7826d37cdd5d9f56f2c4fc2d8a97808d48dd4e76948632985b4a [INFO] running `Command { std: "docker" "start" "-a" "280c8559e78b7826d37cdd5d9f56f2c4fc2d8a97808d48dd4e76948632985b4a", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `std::cell::Cell` [INFO] [stdout] --> src/ALU.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::Cell; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling nand2_tetris v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::option::Option` [INFO] [stdout] --> src/ALU.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | use std::option::Option; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `and_16`, `dmux_4w`, `dmux_8w`, `dmux`, `mux_16_4w`, `mux_16_8w`, `mux_16`, `mux`, `nand`, `or_16`, `or_8w`, `or_nand`, `or`, `xor` [INFO] [stdout] --> src/ALU.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::l_g::l_g::{nand, [INFO] [stdout] | ^^^^ [INFO] [stdout] 5 | or_nand, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 6 | and, [INFO] [stdout] 7 | and_16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | or, [INFO] [stdout] | ^^ [INFO] [stdout] 9 | or_16, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | or_8w, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | mux, [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | mux_16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 13 | mux_16_4w, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | mux_16_8w, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 15 | dmux, [INFO] [stdout] | ^^^^ [INFO] [stdout] 16 | dmux_4w, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | dmux_8w, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | xor, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `carry` is never read [INFO] [stdout] --> src/ALU.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let mut carry = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/ALU.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let mut result: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/ALU.rs:172:17 [INFO] [stdout] | [INFO] [stdout] 172 | let mut y: [i32; 16] = [0; 16]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/ALU.rs:169:30 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn z_x(&mut self, x: [i32;16]) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/ALU.rs:202:31 [INFO] [stdout] | [INFO] [stdout] 202 | pub fn z_y(&mut self, y: [i32;16]) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `carry` is never read [INFO] [stdout] --> src/ALU.rs:237:25 [INFO] [stdout] | [INFO] [stdout] 237 | let mut carry = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ALU.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let mut result: Vec = Vec::new(); [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/ALU.rs:172:17 [INFO] [stdout] | [INFO] [stdout] 172 | let mut y: [i32; 16] = [0; 16]; [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/ALU.rs:278:17 [INFO] [stdout] | [INFO] [stdout] 278 | let mut z_b: [i32;16] = [0;16]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `ALU` should have a snake case name [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod ALU; [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `alu` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `ALU` should have a snake case name [INFO] [stdout] --> src/ALU.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod ALU { [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `alu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::Cell` [INFO] [stdout] --> src/ALU.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::Cell; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::option::Option` [INFO] [stdout] --> src/ALU.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | use std::option::Option; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `and_16`, `dmux_4w`, `dmux_8w`, `dmux`, `mux_16_4w`, `mux_16_8w`, `mux_16`, `mux`, `nand`, `or_16`, `or_8w`, `or_nand`, `or`, `xor` [INFO] [stdout] --> src/ALU.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::l_g::l_g::{nand, [INFO] [stdout] | ^^^^ [INFO] [stdout] 5 | or_nand, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 6 | and, [INFO] [stdout] 7 | and_16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | or, [INFO] [stdout] | ^^ [INFO] [stdout] 9 | or_16, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | or_8w, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | mux, [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | mux_16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 13 | mux_16_4w, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | mux_16_8w, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 15 | dmux, [INFO] [stdout] | ^^^^ [INFO] [stdout] 16 | dmux_4w, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | dmux_8w, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | xor, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `carry` is never read [INFO] [stdout] --> src/ALU.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let mut carry = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/ALU.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let mut result: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/ALU.rs:172:17 [INFO] [stdout] | [INFO] [stdout] 172 | let mut y: [i32; 16] = [0; 16]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/ALU.rs:169:30 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn z_x(&mut self, x: [i32;16]) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/ALU.rs:202:31 [INFO] [stdout] | [INFO] [stdout] 202 | pub fn z_y(&mut self, y: [i32;16]) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `carry` is never read [INFO] [stdout] --> src/ALU.rs:237:25 [INFO] [stdout] | [INFO] [stdout] 237 | let mut carry = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ALU.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let mut result: Vec = Vec::new(); [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] error[E0277]: can't compare `[i32; 16]` with `()` [INFO] [stdout] --> tests/adder_tests.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | assert_eq!(expctd_otpt, y_otpt) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `[i32; 16] == ()` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::cmp::PartialEq<()>` is not implemented for `[i32; 16]` [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ALU.rs:172:17 [INFO] [stdout] | [INFO] [stdout] 172 | let mut y: [i32; 16] = [0; 16]; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ALU.rs:278:17 [INFO] [stdout] | [INFO] [stdout] 278 | let mut z_b: [i32;16] = [0;16]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `nand2_tetris`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: module `ALU` should have a snake case name [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod ALU; [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `alu` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `ALU` should have a snake case name [INFO] [stdout] --> src/ALU.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod ALU { [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `alu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `and_gate_4` [INFO] [stdout] --> tests/l_g_tests.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | let and_gate_4 = and(0, 1); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_and_gate_4` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mux_16_8w_arr_4` [INFO] [stdout] --> tests/l_g_tests.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let mux_16_8w_arr_4 = [0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mux_16_8w_arr_4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `out` [INFO] [stdout] --> tests/l_g_tests.rs:272:13 [INFO] [stdout] | [INFO] [stdout] 272 | let out = [1, 0, 1, 0, 1, 0, 1, 0,]; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_out` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `test_not` [INFO] [stdout] --> tests/l_g_tests.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 298 | fn test_not() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "280c8559e78b7826d37cdd5d9f56f2c4fc2d8a97808d48dd4e76948632985b4a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "280c8559e78b7826d37cdd5d9f56f2c4fc2d8a97808d48dd4e76948632985b4a", kill_on_drop: false }` [INFO] [stdout] 280c8559e78b7826d37cdd5d9f56f2c4fc2d8a97808d48dd4e76948632985b4a