[INFO] fetching crate kz80_lua 0.1.0... [INFO] testing kz80_lua-0.1.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate kz80_lua 0.1.0 into /workspace/builds/worker-6-tc2/source [INFO] started tweaking crates.io crate kz80_lua 0.1.0 [INFO] finished tweaking crates.io crate kz80_lua 0.1.0 [INFO] tweaked toml for crates.io crate kz80_lua 0.1.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate kz80_lua 0.1.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate kz80_lua 0.1.0 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3ffb56db7a371d2d9501d23f820cda4eedd125663369cce8076e42fdb6b1a081 [INFO] running `Command { std: "docker" "start" "-a" "3ffb56db7a371d2d9501d23f820cda4eedd125663369cce8076e42fdb6b1a081", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3ffb56db7a371d2d9501d23f820cda4eedd125663369cce8076e42fdb6b1a081", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3ffb56db7a371d2d9501d23f820cda4eedd125663369cce8076e42fdb6b1a081", kill_on_drop: false }` [INFO] [stdout] 3ffb56db7a371d2d9501d23f820cda4eedd125663369cce8076e42fdb6b1a081 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a5eb3ae32b55ba94ecbc569c0ebea4cb1c6fe6b43cb88caad3c3bb28376b923e [INFO] running `Command { std: "docker" "start" "-a" "a5eb3ae32b55ba94ecbc569c0ebea4cb1c6fe6b43cb88caad3c3bb28376b923e", kill_on_drop: false }` [INFO] [stderr] Compiling kz80_lua v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: method `line` is never used [INFO] [stdout] --> src/lexer.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Lexer { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn line(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_output` is never used [INFO] [stdout] --> src/interpreter.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 218 | impl Interpreter { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 227 | pub fn get_output(&self) -> &[String] { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Nop` and `LoadConstW` are never constructed [INFO] [stdout] --> src/bytecode.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum OpCode { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 7 | // Stack operations [INFO] [stdout] 8 | Nop = 0x00, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | LoadConstW = 0x14, // 2-byte index into constant pool [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/bytecode.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl OpCode { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 79 | pub fn from_u8(b: u8) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/bytecode.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 133 | pub struct Function { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 134 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Function` is never constructed [INFO] [stdout] --> src/bytecode.rs:158:5 [INFO] [stdout] | [INFO] [stdout] 155 | pub enum Constant { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 158 | Function(usize), // Index into function table [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Constant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `globals` is never read [INFO] [stdout] --> src/bytecode.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 163 | pub struct CompiledChunk { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 166 | pub globals: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CompiledChunk` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEAP_END` is never used [INFO] [stdout] --> src/codegen.rs:34:7 [INFO] [stdout] | [INFO] [stdout] 34 | const HEAP_END: u16 = 0x5FFF; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CALL_STACK` is never used [INFO] [stdout] --> src/codegen.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | const CALL_STACK: u16 = 0x7E00; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/codegen.rs:223:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl CodeGen { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 223 | fn nop(&mut self) { self.emit(0x00); } [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | fn ei(&mut self) { self.emit(0xFB); } [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn ld_hl_a(&mut self) { self.emit(0x77); } [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 277 | fn sub_a_r(&mut self, r: u8) { self.emit(0x90 | r); } [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 278 | fn and_a_r(&mut self, r: u8) { self.emit(0xA0 | r); } [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 289 | fn jp(&mut self, addr: u16) { self.emit(0xC3); self.emit16(addr); } [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 295 | fn jp_cc(&mut self, cc: u8, addr: u16) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn jr(&mut self, offset: i8) { self.emit(0x18); self.emit(offset as u8); } [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 311 | fn jr_cc(&mut self, cc: u8, offset: i8) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | fn call(&mut self, addr: u16) { self.emit(0xCD); self.emit16(addr); } [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | fn jp_hl(&mut self) { self.emit(0xE9); } [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | fn const_pool_addr(&self) -> u16 { 0x3FF8 } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.25s [INFO] running `Command { std: "docker" "inspect" "a5eb3ae32b55ba94ecbc569c0ebea4cb1c6fe6b43cb88caad3c3bb28376b923e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a5eb3ae32b55ba94ecbc569c0ebea4cb1c6fe6b43cb88caad3c3bb28376b923e", kill_on_drop: false }` [INFO] [stdout] a5eb3ae32b55ba94ecbc569c0ebea4cb1c6fe6b43cb88caad3c3bb28376b923e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cc8da3de9b8ef23e9115c26f7607306f53b31edf60c9cc406b05f2cf23424ea2 [INFO] running `Command { std: "docker" "start" "-a" "cc8da3de9b8ef23e9115c26f7607306f53b31edf60c9cc406b05f2cf23424ea2", kill_on_drop: false }` [INFO] [stderr] Compiling kz80_lua v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: method `line` is never used [INFO] [stdout] --> src/lexer.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Lexer { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn line(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_output` is never used [INFO] [stdout] --> src/interpreter.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 218 | impl Interpreter { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 227 | pub fn get_output(&self) -> &[String] { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Nop` and `LoadConstW` are never constructed [INFO] [stdout] --> src/bytecode.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum OpCode { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 7 | // Stack operations [INFO] [stdout] 8 | Nop = 0x00, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | LoadConstW = 0x14, // 2-byte index into constant pool [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/bytecode.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl OpCode { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 79 | pub fn from_u8(b: u8) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/bytecode.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 133 | pub struct Function { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 134 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Function` is never constructed [INFO] [stdout] --> src/bytecode.rs:158:5 [INFO] [stdout] | [INFO] [stdout] 155 | pub enum Constant { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 158 | Function(usize), // Index into function table [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Constant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEAP_END` is never used [INFO] [stdout] --> src/codegen.rs:34:7 [INFO] [stdout] | [INFO] [stdout] 34 | const HEAP_END: u16 = 0x5FFF; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CALL_STACK` is never used [INFO] [stdout] --> src/codegen.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | const CALL_STACK: u16 = 0x7E00; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/codegen.rs:223:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl CodeGen { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 223 | fn nop(&mut self) { self.emit(0x00); } [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | fn ei(&mut self) { self.emit(0xFB); } [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn ld_hl_a(&mut self) { self.emit(0x77); } [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 277 | fn sub_a_r(&mut self, r: u8) { self.emit(0x90 | r); } [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 278 | fn and_a_r(&mut self, r: u8) { self.emit(0xA0 | r); } [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 289 | fn jp(&mut self, addr: u16) { self.emit(0xC3); self.emit16(addr); } [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 295 | fn jp_cc(&mut self, cc: u8, addr: u16) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn jr(&mut self, offset: i8) { self.emit(0x18); self.emit(offset as u8); } [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 311 | fn jr_cc(&mut self, cc: u8, offset: i8) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | fn call(&mut self, addr: u16) { self.emit(0xCD); self.emit16(addr); } [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | fn jp_hl(&mut self) { self.emit(0xE9); } [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | fn const_pool_addr(&self) -> u16 { 0x3FF8 } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.42s [INFO] running `Command { std: "docker" "inspect" "cc8da3de9b8ef23e9115c26f7607306f53b31edf60c9cc406b05f2cf23424ea2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc8da3de9b8ef23e9115c26f7607306f53b31edf60c9cc406b05f2cf23424ea2", kill_on_drop: false }` [INFO] [stdout] cc8da3de9b8ef23e9115c26f7607306f53b31edf60c9cc406b05f2cf23424ea2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 066ce240635c343ec57007917c7804086b2b670a0332aee7f522922954adaaba [INFO] running `Command { std: "docker" "start" "-a" "066ce240635c343ec57007917c7804086b2b670a0332aee7f522922954adaaba", kill_on_drop: false }` [INFO] [stderr] warning: method `line` is never used [INFO] [stderr] --> src/lexer.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl Lexer { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 20 | pub fn line(&self) -> usize { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `get_output` is never used [INFO] [stderr] --> src/interpreter.rs:227:12 [INFO] [stderr] | [INFO] [stderr] 218 | impl Interpreter { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 227 | pub fn get_output(&self) -> &[String] { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variants `Nop` and `LoadConstW` are never constructed [INFO] [stderr] --> src/bytecode.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 6 | pub enum OpCode { [INFO] [stderr] | ------ variants in this enum [INFO] [stderr] 7 | // Stack operations [INFO] [stderr] 8 | Nop = 0x00, [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 18 | LoadConstW = 0x14, // 2-byte index into constant pool [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `OpCode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `from_u8` is never used [INFO] [stderr] --> src/bytecode.rs:79:12 [INFO] [stderr] | [INFO] [stderr] 78 | impl OpCode { [INFO] [stderr] | ----------- associated function in this implementation [INFO] [stderr] 79 | pub fn from_u8(b: u8) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `name` is never read [INFO] [stderr] --> src/bytecode.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 133 | pub struct Function { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 134 | pub name: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `Function` is never constructed [INFO] [stderr] --> src/bytecode.rs:158:5 [INFO] [stderr] | [INFO] [stderr] 155 | pub enum Constant { [INFO] [stderr] | -------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 158 | Function(usize), // Index into function table [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Constant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: constant `HEAP_END` is never used [INFO] [stderr] --> src/codegen.rs:34:7 [INFO] [stderr] | [INFO] [stderr] 34 | const HEAP_END: u16 = 0x5FFF; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CALL_STACK` is never used [INFO] [stderr] --> src/codegen.rs:37:7 [INFO] [stderr] | [INFO] [stderr] 37 | const CALL_STACK: u16 = 0x7E00; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/codegen.rs:223:8 [INFO] [stderr] | [INFO] [stderr] 75 | impl CodeGen { [INFO] [stderr] | ------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 223 | fn nop(&mut self) { self.emit(0x00); } [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 226 | fn ei(&mut self) { self.emit(0xFB); } [INFO] [stderr] | ^^ [INFO] [stderr] ... [INFO] [stderr] 264 | fn ld_hl_a(&mut self) { self.emit(0x77); } [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 277 | fn sub_a_r(&mut self, r: u8) { self.emit(0x90 | r); } [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 278 | fn and_a_r(&mut self, r: u8) { self.emit(0xA0 | r); } [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 289 | fn jp(&mut self, addr: u16) { self.emit(0xC3); self.emit16(addr); } [INFO] [stderr] | ^^ [INFO] [stderr] ... [INFO] [stderr] 295 | fn jp_cc(&mut self, cc: u8, addr: u16) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 305 | fn jr(&mut self, offset: i8) { self.emit(0x18); self.emit(offset as u8); } [INFO] [stderr] | ^^ [INFO] [stderr] ... [INFO] [stderr] 311 | fn jr_cc(&mut self, cc: u8, offset: i8) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 321 | fn call(&mut self, addr: u16) { self.emit(0xCD); self.emit16(addr); } [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 339 | fn jp_hl(&mut self) { self.emit(0xE9); } [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 377 | fn const_pool_addr(&self) -> u16 { 0x3FF8 } [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `kz80_lua` (bin "kz80_lua" test) generated 9 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/kz80_lua-3fbb709b808f7ae8) [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test compiler::tests::test_compile_factorial ... ok [INFO] [stdout] test compiler::tests::test_compile_function ... ok [INFO] [stdout] test interpreter::tests::test_arithmetic ... ok [INFO] [stdout] test interpreter::tests::test_for_num ... ok [INFO] [stdout] test interpreter::tests::test_if_then ... ok [INFO] [stdout] test interpreter::tests::test_function ... ok [INFO] [stdout] test compiler::tests::test_compile_simple ... ok [INFO] [stdout] test interpreter::tests::test_table ... ok [INFO] [stdout] test lexer::tests::test_comment ... ok [INFO] [stdout] test interpreter::tests::test_variable ... ok [INFO] [stdout] test lexer::tests::test_keywords ... ok [INFO] [stdout] test interpreter::tests::test_local ... ok [INFO] [stdout] test interpreter::tests::test_print ... ok [INFO] [stdout] test interpreter::tests::test_while ... ok [INFO] [stdout] test interpreter::tests::test_factorial ... ok [INFO] [stdout] test lexer::tests::test_simple ... ok [INFO] [stdout] test lexer::tests::test_string ... ok [INFO] [stdout] test parser::tests::test_simple_assignment ... ok [INFO] [stdout] test parser::tests::test_function_def ... ok [INFO] [stdout] test parser::tests::test_while_loop ... ok [INFO] [stdout] test parser::tests::test_table ... ok [INFO] [stdout] test lexer::tests::test_operators ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "066ce240635c343ec57007917c7804086b2b670a0332aee7f522922954adaaba", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "066ce240635c343ec57007917c7804086b2b670a0332aee7f522922954adaaba", kill_on_drop: false }` [INFO] [stdout] 066ce240635c343ec57007917c7804086b2b670a0332aee7f522922954adaaba