[INFO] cloning repository https://github.com/zachross015/mixal
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zachross015/mixal" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzachross015%2Fmixal", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzachross015%2Fmixal'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d310cebf15fd308a547e8be19594b03a7cf167af
[INFO] checking zachross015/mixal against try#0bdee9e879c87b7211d316e9152109cfd46c576b for pr-150097
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzachross015%2Fmixal" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/zachross015/mixal
[INFO] finished tweaking git repo https://github.com/zachross015/mixal
[INFO] tweaked toml for git repo https://github.com/zachross015/mixal written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/zachross015/mixal on toolchain 0bdee9e879c87b7211d316e9152109cfd46c576b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/zachross015/mixal 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" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking zachross015/mixal against try#0bdee9e879c87b7211d316e9152109cfd46c576b for pr-150097
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzachross015%2Fmixal" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/zachross015/mixal
[INFO] finished tweaking git repo https://github.com/zachross015/mixal
[INFO] tweaked toml for git repo https://github.com/zachross015/mixal written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/zachross015/mixal on toolchain 0bdee9e879c87b7211d316e9152109cfd46c576b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/zachross015/mixal 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" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libc v0.2.79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b897365b51d08dfd0f1e6996cab30cad6b23151a9d5a63523ae6ebe4290a9249
[INFO] running `Command { std: "docker" "start" "-a" "b897365b51d08dfd0f1e6996cab30cad6b23151a9d5a63523ae6ebe4290a9249", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b897365b51d08dfd0f1e6996cab30cad6b23151a9d5a63523ae6ebe4290a9249", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b897365b51d08dfd0f1e6996cab30cad6b23151a9d5a63523ae6ebe4290a9249", kill_on_drop: false }`
[INFO] [stdout] b897365b51d08dfd0f1e6996cab30cad6b23151a9d5a63523ae6ebe4290a9249
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1658d9ded3b2654df7f9a8f96a24ec51f94f1fdacde0ab35664f4914f1ee1c93
[INFO] running `Command { std: "docker" "start" "-a" "1658d9ded3b2654df7f9a8f96a24ec51f94f1fdacde0ab35664f4914f1ee1c93", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.79
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]     Checking ppv-lite86 v0.2.9
[INFO] [stderr]     Checking getrandom v0.1.15
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking mixal v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variant `less` should have an upper camel case name
[INFO] [stdout]   --> src/computer.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     less,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Less`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `equal` should have an upper camel case name
[INFO] [stdout]   --> src/computer.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     equal,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Equal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `greater` should have an upper camel case name
[INFO] [stdout]   --> src/computer.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     greater
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Greater`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::computer::Computer`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::computer::Computer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `less` should have an upper camel case name
[INFO] [stdout]   --> src/computer.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     less,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Less`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `equal` should have an upper camel case name
[INFO] [stdout]   --> src/computer.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     equal,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Equal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `greater` should have an upper camel case name
[INFO] [stdout]   --> src/computer.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     greater
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Greater`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::computer::Computer`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::computer::Computer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/word.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Word {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn default() -> Word {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn from_value(value: i64) -> Word {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn address(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn index(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn field(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn opcode(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn negate(&self) -> Word {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ComparisonFlag` is never used
[INFO] [stdout]   --> src/computer.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum ComparisonFlag {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Computer` is never constructed
[INFO] [stdout]   --> src/computer.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Computer {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/computer.rs:56:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl Computer {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  55 |
[INFO] [stdout]  56 |     pub fn new(mem: [Word; 4000], start: usize) -> Computer {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     pub fn default() -> Computer {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  79 |     fn fetch(self) -> Word {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     fn decode_index(&mut self, index: &u8) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn decode_field(&self, field: &u8) -> (usize, usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     fn decode(&mut self, instruction: &Word) ->  Box<dyn Instruction> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn run(&mut self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Instruction` is never used
[INFO] [stdout]   --> src/instruction.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub trait Instruction {
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NoOperation` is never constructed
[INFO] [stdout]   --> src/instruction.rs:59:21
[INFO] [stdout]    |
[INFO] [stdout] 59 | create_instruction!(NoOperation, (self, _c) {});
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 25 |         impl $i {
[INFO] [stdout]    |         ------- associated function in this implementation
[INFO] [stdout] 26 |             pub fn new() -> $i { $i {} }
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 | create_instruction!(NoOperation, (self, _c) {});
[INFO] [stdout]    | ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Halt` is never constructed
[INFO] [stdout]   --> src/instruction.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 | create_instruction!(Halt, (self, computer) { computer.pc = 4000; });
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 25 |         impl $i {
[INFO] [stdout]    |         ------- associated function in this implementation
[INFO] [stdout] 26 |             pub fn new() -> $i { $i {} }
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 | create_instruction!(Halt, (self, computer) { computer.pc = 4000; });
[INFO] [stdout]    | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LoadA` is never constructed
[INFO] [stdout]   --> src/instruction.rs:63:21
[INFO] [stdout]    |
[INFO] [stdout] 63 | create_instruction!(LoadA, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 | / create_instruction!(LoadA, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout] 64 | |     let ra =  &mut computer.ra;
[INFO] [stdout] 65 | |     let mem = &computer.memory[self.address];
[INFO] [stdout] 66 | |     copy_word_fields(mem, ra, self.field_specification);
[INFO] [stdout] 67 | |     if self.negative { ra.positive = !ra.positive; }
[INFO] [stdout] 68 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LoadX` is never constructed
[INFO] [stdout]   --> src/instruction.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 | create_instruction!(LoadX, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 | / create_instruction!(LoadX, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout] 71 | |     let rx =  &mut computer.rx;
[INFO] [stdout] 72 | |     let mem = &computer.memory[self.address];
[INFO] [stdout] 73 | |     copy_word_fields(mem, rx, self.field_specification);
[INFO] [stdout] 74 | |     if self.negative { rx.positive = !rx.positive; }
[INFO] [stdout] 75 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LoadI` is never constructed
[INFO] [stdout]   --> src/instruction.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 | create_instruction!(LoadI, index: u8, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 | / create_instruction!(LoadI, index: u8, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout] 78 | |     let mem = &computer.memory[self.address].clone();
[INFO] [stdout] 79 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout] 80 | |     copy_word_fields_i(mem, ri, self.field_specification);
[INFO] [stdout] 81 | |     if self.negative { ri.positive = !ri.positive; }
[INFO] [stdout] 82 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreA` is never constructed
[INFO] [stdout]   --> src/instruction.rs:84:21
[INFO] [stdout]    |
[INFO] [stdout] 84 | create_instruction!(StoreA, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 | / create_instruction!(StoreA, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 85 | |     store_operation(&computer.ra, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 86 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreX` is never constructed
[INFO] [stdout]   --> src/instruction.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 | create_instruction!(StoreX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 | / create_instruction!(StoreX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 89 | |     store_operation(&computer.rx, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 90 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreI` is never constructed
[INFO] [stdout]   --> src/instruction.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 | create_instruction!(StoreI, index: u8, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 | / create_instruction!(StoreI, index: u8, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]  93 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout]  94 | |     let reg_clone = ri.clone();
[INFO] [stdout]  95 | |     store_operation(
[INFO] [stdout] ...   |
[INFO] [stdout]  99 | |         );    
[INFO] [stdout] 100 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreJ` is never constructed
[INFO] [stdout]    --> src/instruction.rs:102:21
[INFO] [stdout]     |
[INFO] [stdout] 102 | create_instruction!(StoreJ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 | / create_instruction!(StoreJ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 103 | |     store_operation(&computer.rj, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 104 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreZ` is never constructed
[INFO] [stdout]    --> src/instruction.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 | create_instruction!(StoreZ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 | / create_instruction!(StoreZ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 107 | |     let zero = Word::default();
[INFO] [stdout] 108 | |     store_operation(&zero, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 109 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Add` is never constructed
[INFO] [stdout]    --> src/instruction.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 111 | create_instruction!(Add, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 | / create_instruction!(Add, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 112 | |     let (value, overflow) = add_words(&computer.ra, &computer.memory[self.address], self.field_specification);
[INFO] [stdout] 113 | |     copy_word_fields(&value, &mut computer.ra, self.field_specification);
[INFO] [stdout] 114 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 115 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sub` is never constructed
[INFO] [stdout]    --> src/instruction.rs:117:21
[INFO] [stdout]     |
[INFO] [stdout] 117 | create_instruction!(Sub, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 | / create_instruction!(Sub, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 118 | |     let (value, overflow) = add_words(&computer.ra, &computer.memory[self.address].negate(), self.field_specification);
[INFO] [stdout] 119 | |     copy_word_fields(&value, &mut computer.ra, self.field_specification);
[INFO] [stdout] 120 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 121 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mult` is never constructed
[INFO] [stdout]    --> src/instruction.rs:123:21
[INFO] [stdout]     |
[INFO] [stdout] 123 | create_instruction!(Mult, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 | / create_instruction!(Mult, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout] 124 | |     let (lower_value, upper_value) = multiply_words(&computer.ra, &computer.memory[self.address].negate(), self.field_specificati...
[INFO] [stdout] 125 | |     copy_word_fields(&lower_value, &mut computer.rx, (0,5));
[INFO] [stdout] 126 | |     copy_word_fields(&upper_value, &mut computer.ra, (0,5));
[INFO] [stdout] 127 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Div` is never constructed
[INFO] [stdout]    --> src/instruction.rs:129:21
[INFO] [stdout]     |
[INFO] [stdout] 129 | create_instruction!(Div, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 | / create_instruction!(Div, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout] 130 | |     let (dividend, remainder, overflow) = divide_words(&computer.ra, &computer.rx, &computer.memory[self.address].negate(), self....
[INFO] [stdout] 131 | |     copy_word_fields(&remainder, &mut computer.rx, (0,5));
[INFO] [stdout] 132 | |     copy_word_fields(&dividend, &mut computer.ra, (0,5));
[INFO] [stdout] 133 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 134 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EntA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:136:21
[INFO] [stdout]     |
[INFO] [stdout] 136 | create_instruction!(EntA, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 | / create_instruction!(EntA, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 137 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 138 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 139 | |     copy_word_fields(&word, &mut computer.ra, (0, 5));
[INFO] [stdout] 140 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EntX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:142:21
[INFO] [stdout]     |
[INFO] [stdout] 142 | create_instruction!(EntX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 | / create_instruction!(EntX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 143 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 144 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 145 | |     copy_word_fields(&word, &mut computer.rx, (0, 5));
[INFO] [stdout] 146 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EntI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | create_instruction!(EntI, index: u8, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 | / create_instruction!(EntI, index: u8, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 149 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 150 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 151 | |     let mut ri =  register_for_index(computer, self.index);
[INFO] [stdout] 152 | |     copy_word_fields_i(&word, &mut ri, (0,5));
[INFO] [stdout] 153 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:155:21
[INFO] [stdout]     |
[INFO] [stdout] 155 | create_instruction!(IncA, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 | / create_instruction!(IncA, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 156 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 157 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 158 | |     let (value, overflow) = add_words(&computer.ra, &word, (0,5));
[INFO] [stdout] 159 | |     copy_word_fields(&value, &mut computer.ra, (0, 5));
[INFO] [stdout] 160 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 161 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 | create_instruction!(IncX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 | / create_instruction!(IncX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 164 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 165 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 166 | |     let (value, overflow) = add_words(&computer.rx, &word, (0,5));
[INFO] [stdout] 167 | |     copy_word_fields(&value, &mut computer.rx, (0, 5));
[INFO] [stdout] 168 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 169 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:171:21
[INFO] [stdout]     |
[INFO] [stdout] 171 | create_instruction!(IncI, index: u8, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 | / create_instruction!(IncI, index: u8, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 172 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 173 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 174 | |     let mut ri =  register_for_index(computer, self.index);
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 178 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmpA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:180:21
[INFO] [stdout]     |
[INFO] [stdout] 180 | create_instruction!(CmpA, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 | / create_instruction!(CmpA, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 181 | |     let result = compare_words(&computer.ra, &computer.memory[self.address], self.field_specification);
[INFO] [stdout] 182 | |     computer.comparison_flag = result;
[INFO] [stdout] 183 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmpX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:185:21
[INFO] [stdout]     |
[INFO] [stdout] 185 | create_instruction!(CmpX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | / create_instruction!(CmpX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 186 | |     let result = compare_words(&computer.rx, &computer.memory[self.address], self.field_specification);
[INFO] [stdout] 187 | |     computer.comparison_flag = result;
[INFO] [stdout] 188 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmpI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:190:21
[INFO] [stdout]     |
[INFO] [stdout] 190 | create_instruction!(CmpI, index: u8, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | / create_instruction!(CmpI, index: u8, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 191 | |     let mem = computer.memory[self.address].clone();
[INFO] [stdout] 192 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout] 193 | |     let result = compare_words(&ri, &mem, self.field_specification);
[INFO] [stdout] 194 | |     computer.comparison_flag = result;
[INFO] [stdout] 195 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Jmp` is never constructed
[INFO] [stdout]    --> src/instruction.rs:197:21
[INFO] [stdout]     |
[INFO] [stdout] 197 | create_instruction!(Jmp, address: usize, save_address: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | / create_instruction!(Jmp, address: usize, save_address: bool, (self, computer) {
[INFO] [stdout] 198 | |     if self.save_address {
[INFO] [stdout] 199 | |         save_jump(computer);
[INFO] [stdout] ...   |
[INFO] [stdout] 202 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpO` is never constructed
[INFO] [stdout]    --> src/instruction.rs:204:21
[INFO] [stdout]     |
[INFO] [stdout] 204 | create_instruction!(JmpO, address: usize, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 | / create_instruction!(JmpO, address: usize, should_negate: bool, (self, computer) {
[INFO] [stdout] 205 | |     if computer.overflow_flag.clone() != self.should_negate {
[INFO] [stdout] 206 | |         save_jump(computer);
[INFO] [stdout] 207 | |         computer.pc = self.address;
[INFO] [stdout] 208 | |     }
[INFO] [stdout] 209 | |     computer.overflow_flag = false;
[INFO] [stdout] 210 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `condition_match` is never used
[INFO] [stdout]    --> src/instruction.rs:212:8
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub fn condition_match(op: u8, condition: ComparisonFlag) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpC` is never constructed
[INFO] [stdout]    --> src/instruction.rs:224:21
[INFO] [stdout]     |
[INFO] [stdout] 224 | create_instruction!(JmpC, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 | / create_instruction!(JmpC, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 225 | |     let condition = condition_match(self.operation - 4, computer.comparison_flag);
[INFO] [stdout] 226 | |     if condition {
[INFO] [stdout] 227 | |         save_jump(computer);
[INFO] [stdout] ...   |
[INFO] [stdout] 230 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:232:21
[INFO] [stdout]     |
[INFO] [stdout] 232 | create_instruction!(JmpA, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 | / create_instruction!(JmpA, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 233 | |     let zero = Word::default();
[INFO] [stdout] 234 | |     let result = compare_words(&computer.ra, &zero, (0, 5));
[INFO] [stdout] 235 | |     let condition = condition_match(self.operation, result);
[INFO] [stdout] ...   |
[INFO] [stdout] 240 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 | create_instruction!(JmpX, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | / create_instruction!(JmpX, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 243 | |     let zero = Word::default();
[INFO] [stdout] 244 | |     let result = compare_words(&computer.rx, &zero, (0, 5));
[INFO] [stdout] 245 | |     let condition = condition_match(self.operation, result);
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 | create_instruction!(JmpI, index: u8, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | / create_instruction!(JmpI, index: u8, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 253 | |     let zero = Word::default();
[INFO] [stdout] 254 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout] 255 | |     let result = compare_words(&ri, &zero, (0, 5));
[INFO] [stdout] ...   |
[INFO] [stdout] 261 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SLA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:263:21
[INFO] [stdout]     |
[INFO] [stdout] 263 | create_instruction!(SLA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 | / create_instruction!(SLA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout] 264 | |     let r = computer.ra.clone();
[INFO] [stdout] 265 | |     computer.ra = single_word_left_shift(&r, self.amount, self.cycle);
[INFO] [stdout] 266 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SRA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | create_instruction!(SRA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 268 | / create_instruction!(SRA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout] 269 | |     let r = computer.ra.clone();
[INFO] [stdout] 270 | |     computer.ra = single_word_right_shift(&r, self.amount, self.cycle);
[INFO] [stdout] 271 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SLAX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:273:21
[INFO] [stdout]     |
[INFO] [stdout] 273 | create_instruction!(SLAX, amount: usize, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 | / create_instruction!(SLAX, amount: usize, (self, computer) {
[INFO] [stdout] 274 | |     let a = computer.ra.clone();
[INFO] [stdout] 275 | |     let x = computer.rx.clone();
[INFO] [stdout] 276 | |     let (ra, rx) = double_word_left_shift(&a, &x, self.amount);
[INFO] [stdout] 277 | |     computer.ra = ra;
[INFO] [stdout] 278 | |     computer.rx = rx;
[INFO] [stdout] 279 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SRAX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 | create_instruction!(SRAX, amount: usize, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 | / create_instruction!(SRAX, amount: usize, (self, computer) {
[INFO] [stdout] 282 | |     let a = computer.ra.clone();
[INFO] [stdout] 283 | |     let x = computer.rx.clone();
[INFO] [stdout] 284 | |     let (ra, rx) = double_word_right_shift(&a, &x, self.amount);
[INFO] [stdout] 285 | |     computer.ra = ra;
[INFO] [stdout] 286 | |     computer.rx = rx;
[INFO] [stdout] 287 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_word_fields` is never used
[INFO] [stdout]   --> src/instruction_functions.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn copy_word_fields(from_word: &Word, to_word: &mut Word, field_specification: (usize, usize)) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_word_fields_i` is never used
[INFO] [stdout]   --> src/instruction_functions.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn copy_word_fields_i(from_word: &Word, to_word: &mut Word, field_specification: (usize, usize)) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `store_operation` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:108:8
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub fn store_operation(from_word: &Word, to_word: &mut Word,  field_specification: (usize, usize)) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_for_index` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn register_for_index(computer: &mut Computer, index: u8) -> &mut Word {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_words` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:155:8
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub fn add_words(word1: &Word, word2: &Word, field_specification: (usize, usize)) -> (Word, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_words` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn multiply_words(word1: &Word, word2: &Word, field_specification: (usize, usize)) -> (Word, Word) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `divide_words` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn divide_words(word1: &Word, word2: &Word, word3: &Word, field_specification: (usize, usize)) -> (Word, Word, bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_words` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:256:8
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub fn compare_words(word1: &Word, word2: &Word, field_specification: (usize, usize)) -> ComparisonFlag {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_jump` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub fn save_jump(computer: &mut Computer) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_word_left_shift` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn single_word_left_shift(word: &Word, amount: usize, cycle: bool) -> Word {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_word_right_shift` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:318:8
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub fn single_word_right_shift(word: &Word, amount: usize, cycle: bool) -> Word {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `double_word_left_shift` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub fn double_word_left_shift(word1: &Word, word2: &Word, amount: usize) -> (Word, Word) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `double_word_right_shift` is never used
[INFO] [stdout]    --> src/instruction_functions.rs:384:8
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub fn double_word_right_shift(word1: &Word, word2: &Word, amount: usize) -> (Word, Word) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of variable of type `i64` to itself
[INFO] [stdout]    --> src/instruction_functions.rs:243:5
[INFO] [stdout]     |
[INFO] [stdout] 243 |     dividend = dividend;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of variable of type `i64` to itself
[INFO] [stdout]    --> src/instruction_functions.rs:244:5
[INFO] [stdout]     |
[INFO] [stdout] 244 |     remainder = remainder;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `address`, `index`, `field`, `opcode`, and `negate` are never used
[INFO] [stdout]   --> src/word.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Word {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn address(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn index(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn field(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn opcode(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn negate(&self) -> Word {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rx`, `comparison_flag`, and `peripherals` are never read
[INFO] [stdout]   --> src/computer.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Computer {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 38 |     pub ra: Word,
[INFO] [stdout] 39 |     pub rx: Word, 
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub comparison_flag: ComparisonFlag,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     pub memory: [Word; 4000],
[INFO] [stdout] 50 |     pub peripherals: [u8; 20],
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Computer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `fetch`, `decode_index`, `decode_field`, `decode`, and `run` are never used
[INFO] [stdout]    --> src/computer.rs:79:8
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl Computer {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  79 |     fn fetch(self) -> Word {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     fn decode_index(&mut self, index: &u8) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn decode_field(&self, field: &u8) -> (usize, usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     fn decode(&mut self, instruction: &Word) ->  Box<dyn Instruction> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn run(&mut self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NoOperation` is never constructed
[INFO] [stdout]   --> src/instruction.rs:59:21
[INFO] [stdout]    |
[INFO] [stdout] 59 | create_instruction!(NoOperation, (self, _c) {});
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 25 |         impl $i {
[INFO] [stdout]    |         ------- associated function in this implementation
[INFO] [stdout] 26 |             pub fn new() -> $i { $i {} }
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 | create_instruction!(NoOperation, (self, _c) {});
[INFO] [stdout]    | ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Halt` is never constructed
[INFO] [stdout]   --> src/instruction.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 | create_instruction!(Halt, (self, computer) { computer.pc = 4000; });
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 25 |         impl $i {
[INFO] [stdout]    |         ------- associated function in this implementation
[INFO] [stdout] 26 |             pub fn new() -> $i { $i {} }
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 | create_instruction!(Halt, (self, computer) { computer.pc = 4000; });
[INFO] [stdout]    | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 | / create_instruction!(LoadA, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout] 64 | |     let ra =  &mut computer.ra;
[INFO] [stdout] 65 | |     let mem = &computer.memory[self.address];
[INFO] [stdout] 66 | |     copy_word_fields(mem, ra, self.field_specification);
[INFO] [stdout] 67 | |     if self.negative { ra.positive = !ra.positive; }
[INFO] [stdout] 68 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LoadX` is never constructed
[INFO] [stdout]   --> src/instruction.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 | create_instruction!(LoadX, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 | / create_instruction!(LoadX, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout] 71 | |     let rx =  &mut computer.rx;
[INFO] [stdout] 72 | |     let mem = &computer.memory[self.address];
[INFO] [stdout] 73 | |     copy_word_fields(mem, rx, self.field_specification);
[INFO] [stdout] 74 | |     if self.negative { rx.positive = !rx.positive; }
[INFO] [stdout] 75 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 | / create_instruction!(LoadI, index: u8, address: usize, field_specification: (usize, usize), negative: bool, (self, computer) {
[INFO] [stdout] 78 | |     let mem = &computer.memory[self.address].clone();
[INFO] [stdout] 79 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout] 80 | |     copy_word_fields_i(mem, ri, self.field_specification);
[INFO] [stdout] 81 | |     if self.negative { ri.positive = !ri.positive; }
[INFO] [stdout] 82 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreX` is never constructed
[INFO] [stdout]   --> src/instruction.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 | create_instruction!(StoreX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/instruction.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |           impl $i {
[INFO] [stdout]    |           ------- associated function in this implementation
[INFO] [stdout] 39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 | / create_instruction!(StoreX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 89 | |     store_operation(&computer.rx, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 90 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreJ` is never constructed
[INFO] [stdout]    --> src/instruction.rs:102:21
[INFO] [stdout]     |
[INFO] [stdout] 102 | create_instruction!(StoreJ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 | / create_instruction!(StoreJ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 103 | |     store_operation(&computer.rj, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 104 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StoreZ` is never constructed
[INFO] [stdout]    --> src/instruction.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 | create_instruction!(StoreZ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 | / create_instruction!(StoreZ, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 107 | |     let zero = Word::default();
[INFO] [stdout] 108 | |     store_operation(&zero, &mut computer.memory[self.address], self.field_specification);
[INFO] [stdout] 109 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sub` is never constructed
[INFO] [stdout]    --> src/instruction.rs:117:21
[INFO] [stdout]     |
[INFO] [stdout] 117 | create_instruction!(Sub, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 | / create_instruction!(Sub, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 118 | |     let (value, overflow) = add_words(&computer.ra, &computer.memory[self.address].negate(), self.field_specification);
[INFO] [stdout] 119 | |     copy_word_fields(&value, &mut computer.ra, self.field_specification);
[INFO] [stdout] 120 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 121 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mult` is never constructed
[INFO] [stdout]    --> src/instruction.rs:123:21
[INFO] [stdout]     |
[INFO] [stdout] 123 | create_instruction!(Mult, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 | / create_instruction!(Mult, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout] 124 | |     let (lower_value, upper_value) = multiply_words(&computer.ra, &computer.memory[self.address].negate(), self.field_specificati...
[INFO] [stdout] 125 | |     copy_word_fields(&lower_value, &mut computer.rx, (0,5));
[INFO] [stdout] 126 | |     copy_word_fields(&upper_value, &mut computer.ra, (0,5));
[INFO] [stdout] 127 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Div` is never constructed
[INFO] [stdout]    --> src/instruction.rs:129:21
[INFO] [stdout]     |
[INFO] [stdout] 129 | create_instruction!(Div, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 | / create_instruction!(Div, address: usize, field_specification: (usize, usize) , (self, computer) {
[INFO] [stdout] 130 | |     let (dividend, remainder, overflow) = divide_words(&computer.ra, &computer.rx, &computer.memory[self.address].negate(), self....
[INFO] [stdout] 131 | |     copy_word_fields(&remainder, &mut computer.rx, (0,5));
[INFO] [stdout] 132 | |     copy_word_fields(&dividend, &mut computer.ra, (0,5));
[INFO] [stdout] 133 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 134 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EntX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:142:21
[INFO] [stdout]     |
[INFO] [stdout] 142 | create_instruction!(EntX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 | / create_instruction!(EntX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 143 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 144 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 145 | |     copy_word_fields(&word, &mut computer.rx, (0, 5));
[INFO] [stdout] 146 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EntI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | create_instruction!(EntI, index: u8, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 | / create_instruction!(EntI, index: u8, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 149 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 150 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 151 | |     let mut ri =  register_for_index(computer, self.index);
[INFO] [stdout] 152 | |     copy_word_fields_i(&word, &mut ri, (0,5));
[INFO] [stdout] 153 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:155:21
[INFO] [stdout]     |
[INFO] [stdout] 155 | create_instruction!(IncA, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 | / create_instruction!(IncA, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 156 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 157 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 158 | |     let (value, overflow) = add_words(&computer.ra, &word, (0,5));
[INFO] [stdout] 159 | |     copy_word_fields(&value, &mut computer.ra, (0, 5));
[INFO] [stdout] 160 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 161 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 | create_instruction!(IncX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 | / create_instruction!(IncX, value: usize, entry_is_positive: bool, should_negate: bool, (self, computer) {
[INFO] [stdout] 164 | |     let mut word = Word::from_value(self.value as i64);
[INFO] [stdout] 165 | |     word.positive = if self.should_negate { !self.entry_is_positive } else { self.entry_is_positive };
[INFO] [stdout] 166 | |     let (value, overflow) = add_words(&computer.rx, &word, (0,5));
[INFO] [stdout] 167 | |     copy_word_fields(&value, &mut computer.rx, (0, 5));
[INFO] [stdout] 168 | |     computer.overflow_flag = overflow;
[INFO] [stdout] 169 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmpA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:180:21
[INFO] [stdout]     |
[INFO] [stdout] 180 | create_instruction!(CmpA, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 | / create_instruction!(CmpA, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 181 | |     let result = compare_words(&computer.ra, &computer.memory[self.address], self.field_specification);
[INFO] [stdout] 182 | |     computer.comparison_flag = result;
[INFO] [stdout] 183 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmpX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:185:21
[INFO] [stdout]     |
[INFO] [stdout] 185 | create_instruction!(CmpX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 | / create_instruction!(CmpX, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 186 | |     let result = compare_words(&computer.rx, &computer.memory[self.address], self.field_specification);
[INFO] [stdout] 187 | |     computer.comparison_flag = result;
[INFO] [stdout] 188 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmpI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:190:21
[INFO] [stdout]     |
[INFO] [stdout] 190 | create_instruction!(CmpI, index: u8, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 | / create_instruction!(CmpI, index: u8, address: usize, field_specification: (usize, usize), (self, computer) {
[INFO] [stdout] 191 | |     let mem = computer.memory[self.address].clone();
[INFO] [stdout] 192 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout] 193 | |     let result = compare_words(&ri, &mem, self.field_specification);
[INFO] [stdout] 194 | |     computer.comparison_flag = result;
[INFO] [stdout] 195 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Jmp` is never constructed
[INFO] [stdout]    --> src/instruction.rs:197:21
[INFO] [stdout]     |
[INFO] [stdout] 197 | create_instruction!(Jmp, address: usize, save_address: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 | / create_instruction!(Jmp, address: usize, save_address: bool, (self, computer) {
[INFO] [stdout] 198 | |     if self.save_address {
[INFO] [stdout] 199 | |         save_jump(computer);
[INFO] [stdout] ...   |
[INFO] [stdout] 202 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpO` is never constructed
[INFO] [stdout]    --> src/instruction.rs:204:21
[INFO] [stdout]     |
[INFO] [stdout] 204 | create_instruction!(JmpO, address: usize, should_negate: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 | / create_instruction!(JmpO, address: usize, should_negate: bool, (self, computer) {
[INFO] [stdout] 205 | |     if computer.overflow_flag.clone() != self.should_negate {
[INFO] [stdout] 206 | |         save_jump(computer);
[INFO] [stdout] 207 | |         computer.pc = self.address;
[INFO] [stdout] 208 | |     }
[INFO] [stdout] 209 | |     computer.overflow_flag = false;
[INFO] [stdout] 210 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `condition_match` is never used
[INFO] [stdout]    --> src/instruction.rs:212:8
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub fn condition_match(op: u8, condition: ComparisonFlag) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpC` is never constructed
[INFO] [stdout]    --> src/instruction.rs:224:21
[INFO] [stdout]     |
[INFO] [stdout] 224 | create_instruction!(JmpC, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 | / create_instruction!(JmpC, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 225 | |     let condition = condition_match(self.operation - 4, computer.comparison_flag);
[INFO] [stdout] 226 | |     if condition {
[INFO] [stdout] 227 | |         save_jump(computer);
[INFO] [stdout] ...   |
[INFO] [stdout] 230 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:232:21
[INFO] [stdout]     |
[INFO] [stdout] 232 | create_instruction!(JmpA, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 | / create_instruction!(JmpA, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 233 | |     let zero = Word::default();
[INFO] [stdout] 234 | |     let result = compare_words(&computer.ra, &zero, (0, 5));
[INFO] [stdout] 235 | |     let condition = condition_match(self.operation, result);
[INFO] [stdout] ...   |
[INFO] [stdout] 240 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 | create_instruction!(JmpX, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | / create_instruction!(JmpX, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 243 | |     let zero = Word::default();
[INFO] [stdout] 244 | |     let result = compare_words(&computer.rx, &zero, (0, 5));
[INFO] [stdout] 245 | |     let condition = condition_match(self.operation, result);
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JmpI` is never constructed
[INFO] [stdout]    --> src/instruction.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 | create_instruction!(JmpI, index: u8, address: usize, operation: u8, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 | / create_instruction!(JmpI, index: u8, address: usize, operation: u8, (self, computer) {
[INFO] [stdout] 253 | |     let zero = Word::default();
[INFO] [stdout] 254 | |     let ri =  register_for_index(computer, self.index);
[INFO] [stdout] 255 | |     let result = compare_words(&ri, &zero, (0, 5));
[INFO] [stdout] ...   |
[INFO] [stdout] 261 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SLA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:263:21
[INFO] [stdout]     |
[INFO] [stdout] 263 | create_instruction!(SLA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 | / create_instruction!(SLA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout] 264 | |     let r = computer.ra.clone();
[INFO] [stdout] 265 | |     computer.ra = single_word_left_shift(&r, self.amount, self.cycle);
[INFO] [stdout] 266 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SRA` is never constructed
[INFO] [stdout]    --> src/instruction.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | create_instruction!(SRA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 268 | / create_instruction!(SRA, amount: usize, cycle: bool, (self, computer) {
[INFO] [stdout] 269 | |     let r = computer.ra.clone();
[INFO] [stdout] 270 | |     computer.ra = single_word_right_shift(&r, self.amount, self.cycle);
[INFO] [stdout] 271 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SLAX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:273:21
[INFO] [stdout]     |
[INFO] [stdout] 273 | create_instruction!(SLAX, amount: usize, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 | / create_instruction!(SLAX, amount: usize, (self, computer) {
[INFO] [stdout] 274 | |     let a = computer.ra.clone();
[INFO] [stdout] 275 | |     let x = computer.rx.clone();
[INFO] [stdout] 276 | |     let (ra, rx) = double_word_left_shift(&a, &x, self.amount);
[INFO] [stdout] 277 | |     computer.ra = ra;
[INFO] [stdout] 278 | |     computer.rx = rx;
[INFO] [stdout] 279 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SRAX` is never constructed
[INFO] [stdout]    --> src/instruction.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 | create_instruction!(SRAX, amount: usize, (self, computer) {
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/instruction.rs:39:20
[INFO] [stdout]     |
[INFO] [stdout]  38 |           impl $i {
[INFO] [stdout]     |           ------- associated function in this implementation
[INFO] [stdout]  39 |               pub fn new($($v: $t),*) -> $i {
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 | / create_instruction!(SRAX, amount: usize, (self, computer) {
[INFO] [stdout] 282 | |     let a = computer.ra.clone();
[INFO] [stdout] 283 | |     let x = computer.rx.clone();
[INFO] [stdout] 284 | |     let (ra, rx) = double_word_right_shift(&a, &x, self.amount);
[INFO] [stdout] 285 | |     computer.ra = ra;
[INFO] [stdout] 286 | |     computer.rx = rx;
[INFO] [stdout] 287 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `create_instruction` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.93s
[INFO] running `Command { std: "docker" "inspect" "1658d9ded3b2654df7f9a8f96a24ec51f94f1fdacde0ab35664f4914f1ee1c93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1658d9ded3b2654df7f9a8f96a24ec51f94f1fdacde0ab35664f4914f1ee1c93", kill_on_drop: false }`
[INFO] [stdout] 1658d9ded3b2654df7f9a8f96a24ec51f94f1fdacde0ab35664f4914f1ee1c93
