[INFO] cloning repository https://github.com/MartinBroers/bytecode_parser [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MartinBroers/bytecode_parser" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMartinBroers%2Fbytecode_parser", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMartinBroers%2Fbytecode_parser'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4c934b3229fc3a8189fdd7a3ec3e2d1c98e8f1a0 [INFO] checking MartinBroers/bytecode_parser/4c934b3229fc3a8189fdd7a3ec3e2d1c98e8f1a0 against master#4e1f5d90bca45207605a88e39b1f76abcdb85d2f for pr-123962 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMartinBroers%2Fbytecode_parser" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/MartinBroers/bytecode_parser on toolchain 4e1f5d90bca45207605a88e39b1f76abcdb85d2f [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4e1f5d90bca45207605a88e39b1f76abcdb85d2f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/MartinBroers/bytecode_parser [INFO] finished tweaking git repo https://github.com/MartinBroers/bytecode_parser [INFO] tweaked toml for git repo https://github.com/MartinBroers/bytecode_parser written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/MartinBroers/bytecode_parser 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" "+4e1f5d90bca45207605a88e39b1f76abcdb85d2f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded test-log-macros v0.2.14 [INFO] [stderr] Downloaded test-log v0.2.14 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+4e1f5d90bca45207605a88e39b1f76abcdb85d2f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 932684a6c588c866749f177574501b1b981485816209160592a524268b30130e [INFO] running `Command { std: "docker" "start" "-a" "932684a6c588c866749f177574501b1b981485816209160592a524268b30130e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "932684a6c588c866749f177574501b1b981485816209160592a524268b30130e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "932684a6c588c866749f177574501b1b981485816209160592a524268b30130e", kill_on_drop: false }` [INFO] [stdout] 932684a6c588c866749f177574501b1b981485816209160592a524268b30130e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+4e1f5d90bca45207605a88e39b1f76abcdb85d2f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1c19a6cb9e78d2afd1c1b5411b3d7a8108a85a64cfc68686512fcb9da6347e05 [INFO] running `Command { std: "docker" "start" "-a" "1c19a6cb9e78d2afd1c1b5411b3d7a8108a85a64cfc68686512fcb9da6347e05", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Checking memchr v2.6.3 [INFO] [stderr] Compiling rustix v0.38.11 [INFO] [stderr] Checking regex-syntax v0.7.5 [INFO] [stderr] Checking bitflags v2.4.0 [INFO] [stderr] Checking anstyle v1.0.6 [INFO] [stderr] Checking anstyle-query v1.0.2 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking strsim v0.11.0 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Checking anstyle-parse v0.2.3 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking anstream v0.6.11 [INFO] [stderr] Checking clap_builder v4.5.0 [INFO] [stderr] Checking aho-corasick v1.0.5 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling syn v2.0.48 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking regex-automata v0.3.8 [INFO] [stderr] Checking regex v1.9.5 [INFO] [stderr] Checking env_logger v0.10.0 [INFO] [stderr] Compiling clap_derive v4.5.0 [INFO] [stderr] Compiling test-log-macros v0.2.14 [INFO] [stderr] Compiling num-derive v0.4.1 [INFO] [stderr] Checking test-log v0.2.14 [INFO] [stderr] Checking clap v4.5.0 [INFO] [stderr] Checking bytecode_parser v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `InstructionSet`, `JumpType`, `ParsedInstructionSet` [INFO] [stdout] --> src/flow_parser.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | flow::{Flow, ParsedInstructionSet}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | hex::Hex, [INFO] [stdout] 8 | instruction::{Instruction, InstructionSet, JumpType}, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Index`, `Range` [INFO] [stdout] --> src/hex.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | ops::{Add, AddAssign, BitAnd, Index, Mul, Range, Rem, Shl, Shr, Sub}, [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::num` [INFO] [stdout] --> src/instruction.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/parser.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `JumpInstruction`, `JumpType`, `self` [INFO] [stdout] --> src/parser.rs:7:48 [INFO] [stdout] | [INFO] [stdout] 7 | instruction::{Instruction, InstructionSet, JumpInstruction, JumpType}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 10 | stack::{self, Stack}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/main.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | use log::{error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InstructionSet`, `JumpType`, `ParsedInstructionSet` [INFO] [stdout] --> src/flow_parser.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | flow::{Flow, ParsedInstructionSet}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | hex::Hex, [INFO] [stdout] 8 | instruction::{Instruction, InstructionSet, JumpType}, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Index`, `Range` [INFO] [stdout] --> src/hex.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | ops::{Add, AddAssign, BitAnd, Index, Mul, Range, Rem, Shl, Shr, Sub}, [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::num` [INFO] [stdout] --> src/instruction.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/parser.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `JumpInstruction`, `JumpType`, `self` [INFO] [stdout] --> src/parser.rs:7:48 [INFO] [stdout] | [INFO] [stdout] 7 | instruction::{Instruction, InstructionSet, JumpInstruction, JumpType}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 10 | stack::{self, Stack}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/main.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | use log::{error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/instruction.rs:188:42 [INFO] [stdout] | [INFO] [stdout] 188 | if let Some(calldata) = unsafe { &CALLDATA } { [INFO] [stdout] | ^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 188 | if let Some(calldata) = unsafe { addr_of!(CALLDATA) } { [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/instruction.rs:201:42 [INFO] [stdout] | [INFO] [stdout] 201 | if let Some(calldata) = unsafe { &CALLDATA } { [INFO] [stdout] | ^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 201 | if let Some(calldata) = unsafe { addr_of!(CALLDATA) } { [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/instruction.rs:215:43 [INFO] [stdout] | [INFO] [stdout] 215 | if let Some(callvalue) = unsafe { &CALLVALUE } { [INFO] [stdout] | ^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 215 | if let Some(callvalue) = unsafe { addr_of!(CALLVALUE) } { [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/instruction.rs:188:42 [INFO] [stdout] | [INFO] [stdout] 188 | if let Some(calldata) = unsafe { &CALLDATA } { [INFO] [stdout] | ^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 188 | if let Some(calldata) = unsafe { addr_of!(CALLDATA) } { [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/instruction.rs:201:42 [INFO] [stdout] | [INFO] [stdout] 201 | if let Some(calldata) = unsafe { &CALLDATA } { [INFO] [stdout] | ^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 201 | if let Some(calldata) = unsafe { addr_of!(CALLDATA) } { [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/instruction.rs:215:43 [INFO] [stdout] | [INFO] [stdout] 215 | if let Some(callvalue) = unsafe { &CALLVALUE } { [INFO] [stdout] | ^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 215 | if let Some(callvalue) = unsafe { addr_of!(CALLVALUE) } { [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/parser.rs:305:41 [INFO] [stdout] | [INFO] [stdout] 305 | let first_instruction_section = parse_instruction_set( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | Some(instruction_sections.get(&Hex(0)).unwrap().end), [INFO] [stdout] | ---------------------------------------------------- an argument of type `Memory` is missing [INFO] [stdout] 310 | &mut memory, [INFO] [stdout] | ----------- unexpected argument of type `&mut Memory` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> src/parser.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn parse_instruction_set( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 145 | stack_pointer: Hex, [INFO] [stdout] | ------------------ [INFO] [stdout] 146 | instructions: &HashMap, [INFO] [stdout] | ---------------------------------------- [INFO] [stdout] 147 | input_stack: Option, [INFO] [stdout] | -------------------------- [INFO] [stdout] 148 | memory: Memory, [INFO] [stdout] | -------------- [INFO] [stdout] 149 | end_at: Option, [INFO] [stdout] | ------------------- [INFO] [stdout] help: did you mean [INFO] [stdout] | [INFO] [stdout] 305 | let first_instruction_section = parse_instruction_set(Hex(0), parser.get_instructions(), None, /* Memory */, Some(instruction_sections.get(&Hex(0)).unwrap().end)) [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Parse` is never used [INFO] [stdout] --> src/opcode.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | trait Parse { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `instruction_sets` is never read [INFO] [stdout] --> src/parser.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Parser { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | instruction_sets: HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_instruction_sets` is never used [INFO] [stdout] --> src/parser.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 43 | impl Parser { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn get_instruction_sets(&self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `extend` is never used [INFO] [stdout] --> src/stack.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl Stack { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn extend(&mut self, elements: Stack) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/opcode.rs:1267:45 [INFO] [stdout] | [INFO] [stdout] 1267 | #[derive(Debug, Clone, Eq, Hash, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_OpCodes` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: `#[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, they should be avoided as they go against expectation [INFO] [stdout] --> src/opcode.rs:1267:60 [INFO] [stdout] | [INFO] [stdout] 1267 | #[derive(Debug, Clone, Eq, Hash, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_OpCodes` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `Vec` in the current scope [INFO] [stdout] --> src/parser.rs:312:10 [INFO] [stdout] | [INFO] [stdout] 305 | let first_instruction_section = parse_instruction_set( [INFO] [stdout] | _________________________________________- [INFO] [stdout] 306 | | Hex(0), [INFO] [stdout] 307 | | parser.get_instructions(), [INFO] [stdout] 308 | | None, [INFO] [stdout] ... | [INFO] [stdout] 311 | | ) [INFO] [stdout] 312 | | .unwrap(); [INFO] [stdout] | |_________-^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `swap` with a similar name, but with different arguments [INFO] [stdout] --> /rustc/4e1f5d90bca45207605a88e39b1f76abcdb85d2f/library/core/src/slice/mod.rs:904:5 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: arguments to this function are incorrect [INFO] [stdout] --> src/parser.rs:313:42 [INFO] [stdout] | [INFO] [stdout] 313 | let target_instruction_section = parse_instruction_set( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | Some(instruction_sections.get(&Hex(9)).unwrap().end), [INFO] [stdout] | ---------------------------------------------------- an argument of type `Memory` is missing [INFO] [stdout] 318 | &mut memory, [INFO] [stdout] | ----------- unexpected argument of type `&mut Memory` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> src/parser.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn parse_instruction_set( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 145 | stack_pointer: Hex, [INFO] [stdout] | ------------------ [INFO] [stdout] 146 | instructions: &HashMap, [INFO] [stdout] | ---------------------------------------- [INFO] [stdout] 147 | input_stack: Option, [INFO] [stdout] | -------------------------- [INFO] [stdout] 148 | memory: Memory, [INFO] [stdout] | -------------- [INFO] [stdout] 149 | end_at: Option, [INFO] [stdout] | ------------------- [INFO] [stdout] help: did you mean [INFO] [stdout] | [INFO] [stdout] 313 | let target_instruction_section = parse_instruction_set(Hex(9), parser.get_instructions(), None, /* Memory */, Some(instruction_sections.get(&Hex(9)).unwrap().end)) [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `Vec` in the current scope [INFO] [stdout] --> src/parser.rs:320:10 [INFO] [stdout] | [INFO] [stdout] 313 | let target_instruction_section = parse_instruction_set( [INFO] [stdout] | __________________________________________- [INFO] [stdout] 314 | | Hex(9), [INFO] [stdout] 315 | | parser.get_instructions(), [INFO] [stdout] 316 | | None, [INFO] [stdout] ... | [INFO] [stdout] 319 | | ) [INFO] [stdout] 320 | | .unwrap(); [INFO] [stdout] | |_________-^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `swap` with a similar name, but with different arguments [INFO] [stdout] --> /rustc/4e1f5d90bca45207605a88e39b1f76abcdb85d2f/library/core/src/slice/mod.rs:904:5 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `jumps` on type `&InstructionSet` [INFO] [stdout] --> src/parser.rs:360:47 [INFO] [stdout] | [INFO] [stdout] 360 | result.extend(instruction_set.jumps.clone()); [INFO] [stdout] | ^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] help: a field with a similar name exists [INFO] [stdout] | [INFO] [stdout] 360 | result.extend(instruction_set.jump.clone()); [INFO] [stdout] | ~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:382:13 [INFO] [stdout] | [INFO] [stdout] 382 | let mut parser = Parser::new(input); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:421:13 [INFO] [stdout] | [INFO] [stdout] 421 | let mut parser = Parser::new(input); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:480:13 [INFO] [stdout] | [INFO] [stdout] 480 | let mut parser = Parser::new(input); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:537:13 [INFO] [stdout] | [INFO] [stdout] 537 | let mut parser = Parser::new(input); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 5 previous errors; 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0599, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `bytecode_parser` (bin "bytecode_parser" test) due to 6 previous errors; 13 warnings emitted [INFO] running `Command { std: "docker" "inspect" "1c19a6cb9e78d2afd1c1b5411b3d7a8108a85a64cfc68686512fcb9da6347e05", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1c19a6cb9e78d2afd1c1b5411b3d7a8108a85a64cfc68686512fcb9da6347e05", kill_on_drop: false }` [INFO] [stdout] 1c19a6cb9e78d2afd1c1b5411b3d7a8108a85a64cfc68686512fcb9da6347e05