[INFO] cloning repository https://github.com/codefionn/rust-customvmcpu [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/codefionn/rust-customvmcpu" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcodefionn%2Frust-customvmcpu", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcodefionn%2Frust-customvmcpu'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 22161aeead9890e8be81a7bc33b1864a724bff59 [INFO] checking codefionn/rust-customvmcpu against master#f8f6997469237299c1d60814c7b9828602a1f8e4 for pr-143808 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcodefionn%2Frust-customvmcpu" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/codefionn/rust-customvmcpu [INFO] finished tweaking git repo https://github.com/codefionn/rust-customvmcpu [INFO] tweaked toml for git repo https://github.com/codefionn/rust-customvmcpu written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/codefionn/rust-customvmcpu on toolchain f8f6997469237299c1d60814c7b9828602a1f8e4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f8f6997469237299c1d60814c7b9828602a1f8e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/codefionn/rust-customvmcpu 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" "+f8f6997469237299c1d60814c7b9828602a1f8e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+f8f6997469237299c1d60814c7b9828602a1f8e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] aff65ce5136e7f794619e86b964aac939921489efc403bab9dee97b37fbfbaac [INFO] running `Command { std: "docker" "start" "-a" "aff65ce5136e7f794619e86b964aac939921489efc403bab9dee97b37fbfbaac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "aff65ce5136e7f794619e86b964aac939921489efc403bab9dee97b37fbfbaac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aff65ce5136e7f794619e86b964aac939921489efc403bab9dee97b37fbfbaac", kill_on_drop: false }` [INFO] [stdout] aff65ce5136e7f794619e86b964aac939921489efc403bab9dee97b37fbfbaac [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+f8f6997469237299c1d60814c7b9828602a1f8e4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 608a89da1243c1b52eb317d0657a8dfcf754a47b87030260e2c69485cbd0b40b [INFO] running `Command { std: "docker" "start" "-a" "608a89da1243c1b52eb317d0657a8dfcf754a47b87030260e2c69485cbd0b40b", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.29 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.76 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling beef v0.5.1 [INFO] [stderr] Compiling regex-syntax v0.6.25 [INFO] [stderr] Compiling utf8-ranges v1.0.4 [INFO] [stderr] Checking more-asserts v0.2.1 [INFO] [stderr] Checking json v0.12.4 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling logos-derive v0.12.0 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Checking logos v0.12.0 [INFO] [stderr] Checking libcustomvmcpu v0.1.0 (/opt/rustwide/workdir/libs/libcustomvmcpu) [INFO] [stdout] warning: unused imports: `ERROR_START_NUM`, `Error`, `LAST_REGISTER`, `OpCode`, and `Register` [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:23:21 [INFO] [stdout] | [INFO] [stdout] 23 | use super::common::{OpCode, Register, Error, LAST_REGISTER, ERROR_START_NUM}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 109 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:145:5 [INFO] [stdout] | [INFO] [stdout] 145 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ParserResult` [INFO] [stdout] --> libs/libcustomvmcpu/src/parser.rs:770:49 [INFO] [stdout] | [INFO] [stdout] 770 | use super::{Token, parse_str, parse_string, ParserResult, Expr, ImmediateExpr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Lexer` [INFO] [stdout] --> libs/libcustomvmcpu/src/parser.rs:771:24 [INFO] [stdout] | [INFO] [stdout] 771 | use logos::{Logos, Lexer}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ERROR_START_NUM`, `Error`, and `LAST_REGISTER` [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:23:39 [INFO] [stdout] | [INFO] [stdout] 23 | use super::common::{OpCode, Register, Error, LAST_REGISTER, ERROR_START_NUM}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `compile` [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:199:17 [INFO] [stdout] | [INFO] [stdout] 199 | use super::{compile, parse_and_compile_str, utils, Register, OpCode}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 109 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:145:5 [INFO] [stdout] | [INFO] [stdout] 145 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 33 | / Expr::InstructionTwoRegisters(_, _, _) [INFO] [stdout] 34 | | | Expr::InstructionRegisterAndImmediate(_, _, _) [INFO] [stdout] 35 | | | Expr::InstructionRegister(_, _) [INFO] [stdout] 36 | | | Expr::InstructionImmediate(_, _) => size_of::() as u32, [INFO] [stdout] | |______________________________________________- matches some of the same values [INFO] [stdout] 37 | Expr::StoreI32(_) => size_of::() as u32, [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] 38 | Expr::StoreStr(string) => string.bytes().len() as u32, [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] 39 | Expr::Label(_) => 0, [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] 40 | Expr::Error() => 0, [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `write_unknown_register_value` and `get_two_register_and_immediate` are never used [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:562:8 [INFO] [stdout] | [INFO] [stdout] 181 | impl<'source, InterpreterImpl: Interpreter> VirtualMachine<'source, InterpreterImpl> { [INFO] [stdout] | ------------------------------------------------------------------------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 562 | fn write_unknown_register_value(&mut self, reg: u8, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 668 | fn get_two_register_and_immediate(instruction: u32) -> (u8, u8, u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `parser` is never read [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 54 | struct Compiler<'source> { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 55 | label_map: HashMap, [INFO] [stdout] 56 | parser: &'source mut ParserResult, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libs/libcustomvmcpu/src/common.rs:23:53 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, PartialOrd, Debug, Clone, Copy, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Register` [INFO] [stdout] 24 | #[repr(u8)] [INFO] [stdout] 25 | pub enum Register [INFO] [stdout] | -------- `Register` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libs/libcustomvmcpu/src/common.rs:52:53 [INFO] [stdout] | [INFO] [stdout] 52 | #[derive(PartialEq, PartialOrd, Debug, Clone, Copy, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_OpCode` [INFO] [stdout] 53 | #[repr(u8)] [INFO] [stdout] 54 | pub enum OpCode { [INFO] [stdout] | ------ `OpCode` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libs/libcustomvmcpu/src/common.rs:481:53 [INFO] [stdout] | [INFO] [stdout] 481 | #[derive(PartialEq, PartialOrd, Debug, Clone, Copy, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Error` [INFO] [stdout] 482 | #[repr(u32)] [INFO] [stdout] 483 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking exampleprogramwriter v0.1.0 (/opt/rustwide/workdir/libs/exampleprogramwriter) [INFO] [stderr] Checking interpreter v0.1.0 (/opt/rustwide/workdir/libs/interpreter) [INFO] [stderr] Checking compiler v0.1.0 (/opt/rustwide/workdir/libs/compiler) [INFO] [stderr] Checking rust-customvmcpu v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking customvmcpu-json v0.1.0 (/opt/rustwide/workdir/libs/customvmcpu-json) [INFO] [stdout] warning: unused import: `OpCode` [INFO] [stdout] --> src/main.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | use libcustomvmcpu::common::{OpCode, Register, Error, ERROR_START_NUM}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `common` and `runtime` [INFO] [stdout] --> libs/compiler/src/main.rs:7:22 [INFO] [stdout] | [INFO] [stdout] 7 | use libcustomvmcpu::{runtime, parser, compiler, common}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Interpreter` [INFO] [stdout] --> src/main.rs:23:31 [INFO] [stdout] | [INFO] [stdout] 23 | use libcustomvmcpu::runtime::{Interpreter, BinaryVirtualMachine, BinaryInterpreter}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OpCode` [INFO] [stdout] --> src/main.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | use libcustomvmcpu::common::{OpCode, Register, Error, ERROR_START_NUM}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Interpreter` [INFO] [stdout] --> src/main.rs:23:31 [INFO] [stdout] | [INFO] [stdout] 23 | use libcustomvmcpu::runtime::{Interpreter, BinaryVirtualMachine, BinaryInterpreter}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `common` and `runtime` [INFO] [stdout] --> libs/compiler/src/main.rs:7:22 [INFO] [stdout] | [INFO] [stdout] 7 | use libcustomvmcpu::{runtime, parser, compiler, common}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 33 | / Expr::InstructionTwoRegisters(_, _, _) [INFO] [stdout] 34 | | | Expr::InstructionRegisterAndImmediate(_, _, _) [INFO] [stdout] 35 | | | Expr::InstructionRegister(_, _) [INFO] [stdout] 36 | | | Expr::InstructionImmediate(_, _) => size_of::() as u32, [INFO] [stdout] | |______________________________________________- matches some of the same values [INFO] [stdout] 37 | Expr::StoreI32(_) => size_of::() as u32, [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] 38 | Expr::StoreStr(string) => string.bytes().len() as u32, [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] 39 | Expr::Label(_) => 0, [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] 40 | Expr::Error() => 0, [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `write_unknown_register_value` and `get_two_register_and_immediate` are never used [INFO] [stdout] --> libs/libcustomvmcpu/src/runtime.rs:562:8 [INFO] [stdout] | [INFO] [stdout] 181 | impl<'source, InterpreterImpl: Interpreter> VirtualMachine<'source, InterpreterImpl> { [INFO] [stdout] | ------------------------------------------------------------------------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 562 | fn write_unknown_register_value(&mut self, reg: u8, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 668 | fn get_two_register_and_immediate(instruction: u32) -> (u8, u8, u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `parser` is never read [INFO] [stdout] --> libs/libcustomvmcpu/src/compiler.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 54 | struct Compiler<'source> { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 55 | label_map: HashMap, [INFO] [stdout] 56 | parser: &'source mut ParserResult, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libs/libcustomvmcpu/src/common.rs:23:53 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, PartialOrd, Debug, Clone, Copy, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Register` [INFO] [stdout] 24 | #[repr(u8)] [INFO] [stdout] 25 | pub enum Register [INFO] [stdout] | -------- `Register` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libs/libcustomvmcpu/src/common.rs:52:53 [INFO] [stdout] | [INFO] [stdout] 52 | #[derive(PartialEq, PartialOrd, Debug, Clone, Copy, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_OpCode` [INFO] [stdout] 53 | #[repr(u8)] [INFO] [stdout] 54 | pub enum OpCode { [INFO] [stdout] | ------ `OpCode` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libs/libcustomvmcpu/src/common.rs:481:53 [INFO] [stdout] | [INFO] [stdout] 481 | #[derive(PartialEq, PartialOrd, Debug, Clone, Copy, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Error` [INFO] [stdout] 482 | #[repr(u32)] [INFO] [stdout] 483 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (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 9.29s [INFO] running `Command { std: "docker" "inspect" "608a89da1243c1b52eb317d0657a8dfcf754a47b87030260e2c69485cbd0b40b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "608a89da1243c1b52eb317d0657a8dfcf754a47b87030260e2c69485cbd0b40b", kill_on_drop: false }` [INFO] [stdout] 608a89da1243c1b52eb317d0657a8dfcf754a47b87030260e2c69485cbd0b40b