[INFO] cloning repository https://github.com/mrizaln/crafting-interpreters [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mrizaln/crafting-interpreters" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmrizaln%2Fcrafting-interpreters", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmrizaln%2Fcrafting-interpreters'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2b992734c7e423801fc773d6f068b332aab80a52 [INFO] checking mrizaln/crafting-interpreters against try#95813608313bff49cfc1afc393a946a3c085b772 for pr-148946 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmrizaln%2Fcrafting-interpreters" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/mrizaln/crafting-interpreters [INFO] finished tweaking git repo https://github.com/mrizaln/crafting-interpreters [INFO] tweaked toml for git repo https://github.com/mrizaln/crafting-interpreters written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mrizaln/crafting-interpreters on toolchain 95813608313bff49cfc1afc393a946a3c085b772 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/mrizaln/crafting-interpreters 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" "+95813608313bff49cfc1afc393a946a3c085b772" "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 coredump v0.1.2 [INFO] [stderr] Downloaded lasso v0.7.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ec38e0daf506e200bba5ee4eb60bf05c63f3a17d8f599b3910346286f2675f2a [INFO] running `Command { std: "docker" "start" "-a" "ec38e0daf506e200bba5ee4eb60bf05c63f3a17d8f599b3910346286f2675f2a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ec38e0daf506e200bba5ee4eb60bf05c63f3a17d8f599b3910346286f2675f2a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ec38e0daf506e200bba5ee4eb60bf05c63f3a17d8f599b3910346286f2675f2a", kill_on_drop: false }` [INFO] [stdout] ec38e0daf506e200bba5ee4eb60bf05c63f3a17d8f599b3910346286f2675f2a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 608236cc1babeaca8c597cf03be4fbfe2d35210910ccfb014007ba8e309b1b73 [INFO] running `Command { std: "docker" "start" "-a" "608236cc1babeaca8c597cf03be4fbfe2d35210910ccfb014007ba8e309b1b73", kill_on_drop: false }` [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking clap_lex v0.7.5 [INFO] [stderr] Compiling clap_derive v4.5.41 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking coredump v0.1.2 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Checking diff v0.1.13 [INFO] [stderr] Checking yansi v1.0.1 [INFO] [stderr] Checking clap_builder v4.5.41 [INFO] [stderr] Checking boolinator v2.4.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking pretty_assertions v1.4.1 [INFO] [stderr] Checking lasso v0.7.3 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking clap v4.5.41 [INFO] [stderr] Checking loxi v0.1.0 (/opt/rustwide/workdir/loxi) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxi/src/parse/mod.rs:131:21 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn new(ast: &mut Ast, mode: Mode) -> Parser { [INFO] [stdout] | ^^^^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 131 | pub fn new(ast: &mut Ast, mode: Mode) -> Parser<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxi/src/resolve/scope.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::collections::hash_set::Iter<(Key, Loc)> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::collections::hash_set::Iter<'_, (Key, Loc)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxi/src/resolve/scope.rs:77:17 [INFO] [stdout] | [INFO] [stdout] 77 | pub fn iter(&self) -> std::collections::hash_set::Iter<(Key, Loc)> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 77 | pub fn iter(&self) -> std::collections::hash_set::Iter<'_, (Key, Loc)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> loxi/src/interp/function.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | #[derive(Clone, Debug, PartialEq, PartialOrd)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 34 | pub body: NativeFn, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> loxi/src/interp/function.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | #[derive(Clone, Debug, PartialEq, PartialOrd)] [INFO] [stdout] | ---------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 34 | pub body: NativeFn, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking loxii v0.1.0 (/opt/rustwide/workdir/loxii) [INFO] [stdout] warning: unused imports: `InstrAddr` and `JumpOp` [INFO] [stdout] --> loxii/src/compiler.rs:16:50 [INFO] [stdout] | [INFO] [stdout] 16 | BinOp, Bytecode, BytecodeBuilder, ConstKind, InstrAddr, JumpDest, JumpKind, JumpOp, LoadOp, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> loxii/src/memory.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `loxi::util::*` [INFO] [stdout] --> loxii/src/util.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub use loxi::util::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InstrAddr` and `JumpOp` [INFO] [stdout] --> loxii/src/compiler.rs:16:50 [INFO] [stdout] | [INFO] [stdout] 16 | BinOp, Bytecode, BytecodeBuilder, ConstKind, InstrAddr, JumpDest, JumpKind, JumpOp, LoadOp, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> loxii/src/memory.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `loxi::util::*` [INFO] [stdout] --> loxii/src/util.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub use loxi::util::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxi/src/parse/mod.rs:131:21 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn new(ast: &mut Ast, mode: Mode) -> Parser { [INFO] [stdout] | ^^^^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 131 | pub fn new(ast: &mut Ast, mode: Mode) -> Parser<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxi/src/resolve/scope.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::collections::hash_set::Iter<(Key, Loc)> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn iter(&self) -> std::collections::hash_set::Iter<'_, (Key, Loc)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxi/src/resolve/scope.rs:77:17 [INFO] [stdout] | [INFO] [stdout] 77 | pub fn iter(&self) -> std::collections::hash_set::Iter<(Key, Loc)> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 77 | pub fn iter(&self) -> std::collections::hash_set::Iter<'_, (Key, Loc)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> loxi/src/interp/function.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | #[derive(Clone, Debug, PartialEq, PartialOrd)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 34 | pub body: NativeFn, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> loxi/src/interp/function.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | #[derive(Clone, Debug, PartialEq, PartialOrd)] [INFO] [stdout] | ---------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 34 | pub body: NativeFn, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:116:52 [INFO] [stdout] | [INFO] [stdout] 116 | fn compile_val_expr(&mut self, expr: &ValExpr, loc: &Loc) -> Result<(), CompileError> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_loc` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `callee` [INFO] [stdout] --> loxii/src/compiler.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | ValExpr::Call { callee, args } => todo!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `callee: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> loxii/src/compiler.rs:187:37 [INFO] [stdout] | [INFO] [stdout] 187 | ValExpr::Call { callee, args } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `args: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object` [INFO] [stdout] --> loxii/src/compiler.rs:206:28 [INFO] [stdout] | [INFO] [stdout] 206 | RefExpr::Get { object, prop } => todo!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `object: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> loxii/src/compiler.rs:206:36 [INFO] [stdout] | [INFO] [stdout] 206 | RefExpr::Get { object, prop } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `prop: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object` [INFO] [stdout] --> loxii/src/compiler.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 208 | object, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `object: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> loxii/src/compiler.rs:209:17 [INFO] [stdout] | [INFO] [stdout] 209 | prop, [INFO] [stdout] | ^^^^ help: try ignoring the field: `prop: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> loxii/src/compiler.rs:210:17 [INFO] [stdout] | [INFO] [stdout] 210 | value, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> loxii/src/compiler.rs:212:30 [INFO] [stdout] | [INFO] [stdout] 212 | RefExpr::Super { prop } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `prop: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | loc: &Loc, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_loc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:326:59 [INFO] [stdout] | [INFO] [stdout] 326 | fn compile_function(&mut self, func: &StmtFunctionId, loc: &Loc) -> Result<(), CompileError> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_loc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func` [INFO] [stdout] --> loxii/src/compiler.rs:327:29 [INFO] [stdout] | [INFO] [stdout] 327 | let StmtFunctionL { func, loc } = self.ast.get_func(func); [INFO] [stdout] | ^^^^ help: try ignoring the field: `func: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:327:35 [INFO] [stdout] | [INFO] [stdout] 327 | let StmtFunctionL { func, loc } = self.ast.get_func(func); [INFO] [stdout] | ^^^ help: try ignoring the field: `loc: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> loxii/src/compiler.rs:331:34 [INFO] [stdout] | [INFO] [stdout] 331 | fn compile_return(&mut self, value: &Option) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> loxii/src/compiler.rs:337:9 [INFO] [stdout] | [INFO] [stdout] 337 | name: &Key, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base` [INFO] [stdout] --> loxii/src/compiler.rs:338:9 [INFO] [stdout] | [INFO] [stdout] 338 | base: &Option, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_base` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `methods` [INFO] [stdout] --> loxii/src/compiler.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | methods: &[StmtFunctionId], [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_methods` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> loxii/src/compiler.rs:345:33 [INFO] [stdout] | [INFO] [stdout] 345 | fn compile_debug(&mut self, expr: &ExprId) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap` [INFO] [stdout] --> loxii/src/memory.rs:311:26 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn gc(stack: &Stack, heap: &mut Heap) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_heap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:116:52 [INFO] [stdout] | [INFO] [stdout] 116 | fn compile_val_expr(&mut self, expr: &ValExpr, loc: &Loc) -> Result<(), CompileError> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_loc` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `callee` [INFO] [stdout] --> loxii/src/compiler.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | ValExpr::Call { callee, args } => todo!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `callee: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> loxii/src/compiler.rs:187:37 [INFO] [stdout] | [INFO] [stdout] 187 | ValExpr::Call { callee, args } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `args: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object` [INFO] [stdout] --> loxii/src/compiler.rs:206:28 [INFO] [stdout] | [INFO] [stdout] 206 | RefExpr::Get { object, prop } => todo!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `object: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> loxii/src/compiler.rs:206:36 [INFO] [stdout] | [INFO] [stdout] 206 | RefExpr::Get { object, prop } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `prop: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object` [INFO] [stdout] --> loxii/src/compiler.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 208 | object, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `object: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> loxii/src/compiler.rs:209:17 [INFO] [stdout] | [INFO] [stdout] 209 | prop, [INFO] [stdout] | ^^^^ help: try ignoring the field: `prop: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> loxii/src/compiler.rs:210:17 [INFO] [stdout] | [INFO] [stdout] 210 | value, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> loxii/src/compiler.rs:212:30 [INFO] [stdout] | [INFO] [stdout] 212 | RefExpr::Super { prop } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `prop: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | loc: &Loc, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_loc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap_id` [INFO] [stdout] --> loxii/src/memory.rs:317:27 [INFO] [stdout] | [INFO] [stdout] 317 | Value::String(heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heap_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `class_id` [INFO] [stdout] --> loxii/src/memory.rs:318:26 [INFO] [stdout] | [INFO] [stdout] 318 | Value::Class(class_id) => todo!(), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap_id` [INFO] [stdout] --> loxii/src/memory.rs:319:29 [INFO] [stdout] | [INFO] [stdout] 319 | Value::Instance(heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heap_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func_id` [INFO] [stdout] --> loxii/src/memory.rs:320:29 [INFO] [stdout] | [INFO] [stdout] 320 | Value::Function(func_id, heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap_id` [INFO] [stdout] --> loxii/src/memory.rs:320:38 [INFO] [stdout] | [INFO] [stdout] 320 | Value::Function(func_id, heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heap_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:326:59 [INFO] [stdout] | [INFO] [stdout] 326 | fn compile_function(&mut self, func: &StmtFunctionId, loc: &Loc) -> Result<(), CompileError> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_loc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func` [INFO] [stdout] --> loxii/src/compiler.rs:327:29 [INFO] [stdout] | [INFO] [stdout] 327 | let StmtFunctionL { func, loc } = self.ast.get_func(func); [INFO] [stdout] | ^^^^ help: try ignoring the field: `func: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loc` [INFO] [stdout] --> loxii/src/compiler.rs:327:35 [INFO] [stdout] | [INFO] [stdout] 327 | let StmtFunctionL { func, loc } = self.ast.get_func(func); [INFO] [stdout] | ^^^ help: try ignoring the field: `loc: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> loxii/src/compiler.rs:331:34 [INFO] [stdout] | [INFO] [stdout] 331 | fn compile_return(&mut self, value: &Option) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> loxii/src/value.rs:186:26 [INFO] [stdout] | [INFO] [stdout] 186 | Value::Class(id) => todo!(), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> loxii/src/value.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | Value::Instance(id) => todo!(), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> loxii/src/value.rs:188:29 [INFO] [stdout] | [INFO] [stdout] 188 | Value::Function(id, inst) => todo!(), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> loxii/src/compiler.rs:337:9 [INFO] [stdout] | [INFO] [stdout] 337 | name: &Key, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base` [INFO] [stdout] --> loxii/src/compiler.rs:338:9 [INFO] [stdout] | [INFO] [stdout] 338 | base: &Option, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_base` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inst` [INFO] [stdout] --> loxii/src/value.rs:188:33 [INFO] [stdout] | [INFO] [stdout] 188 | Value::Function(id, inst) => todo!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_inst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `methods` [INFO] [stdout] --> loxii/src/compiler.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | methods: &[StmtFunctionId], [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_methods` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> loxii/src/compiler.rs:345:33 [INFO] [stdout] | [INFO] [stdout] 345 | fn compile_debug(&mut self, expr: &ExprId) -> Result<(), CompileError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `off` [INFO] [stdout] --> loxii/src/vm.rs:79:29 [INFO] [stdout] | [INFO] [stdout] 79 | LoadOp::Upvalue(off) => todo!(), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_off` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `off` [INFO] [stdout] --> loxii/src/vm.rs:96:30 [INFO] [stdout] | [INFO] [stdout] 96 | StoreOp::Upvalue(off) => todo!(), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_off` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap` [INFO] [stdout] --> loxii/src/memory.rs:311:26 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn gc(stack: &Stack, heap: &mut Heap) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_heap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap_id` [INFO] [stdout] --> loxii/src/memory.rs:317:27 [INFO] [stdout] | [INFO] [stdout] 317 | Value::String(heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heap_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `class_id` [INFO] [stdout] --> loxii/src/memory.rs:318:26 [INFO] [stdout] | [INFO] [stdout] 318 | Value::Class(class_id) => todo!(), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap_id` [INFO] [stdout] --> loxii/src/memory.rs:319:29 [INFO] [stdout] | [INFO] [stdout] 319 | Value::Instance(heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heap_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func_id` [INFO] [stdout] --> loxii/src/memory.rs:320:29 [INFO] [stdout] | [INFO] [stdout] 320 | Value::Function(func_id, heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heap_id` [INFO] [stdout] --> loxii/src/memory.rs:320:38 [INFO] [stdout] | [INFO] [stdout] 320 | Value::Function(func_id, heap_id) => todo!(), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heap_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Upvalue` is never constructed [INFO] [stdout] --> loxii/src/bytecode.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 122 | enum OpValue { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 123 | Pop, [INFO] [stdout] 124 | Upvalue, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `name`, and `loc` are never read [INFO] [stdout] --> loxii/src/bytecode.rs:151:5 [INFO] [stdout] | [INFO] [stdout] 150 | pub struct Chunk { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 151 | id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] 152 | name: ConstAddr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 153 | loc: Loc, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_be_bytes` is never used [INFO] [stdout] --> loxii/src/bytecode.rs:219:12 [INFO] [stdout] | [INFO] [stdout] 218 | impl ConstAddr { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 219 | pub fn to_be_bytes(self) -> [u8; size_of::()] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `emit_upvalue`, `emit_call`, and `is_global_chunk` are never used [INFO] [stdout] --> loxii/src/bytecode.rs:351:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl BytecodeBuilder { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 351 | pub fn emit_upvalue(&mut self) -> InstrAddr { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 457 | pub fn emit_call(&mut self, loc: Loc) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 498 | fn is_global_chunk(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `advance_slice` is never used [INFO] [stdout] --> loxii/src/bytecode.rs:548:8 [INFO] [stdout] | [INFO] [stdout] 503 | impl<'a> BytecodeReader<'a> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 548 | fn advance_slice(&mut self, size: usize) -> &'a [u8] { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `blocks` is never read [INFO] [stdout] --> loxii/src/memory.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Stack { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 12 | values: Vec, [INFO] [stdout] 13 | blocks: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Value` and `Instance` are never constructed [INFO] [stdout] --> loxii/src/memory.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub enum HeapValue { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 29 | Value(Value), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | String(String), [INFO] [stdout] 31 | Instance(Instance), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> loxii/src/memory.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct ValueId { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 42 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ValueId` 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 `mark` is never read [INFO] [stdout] --> loxii/src/memory.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 45 | struct PageValue { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 46 | value: HeapValue, [INFO] [stdout] 47 | mark: Mark, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Live` is never constructed [INFO] [stdout] --> loxii/src/memory.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 56 | enum Mark { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] 57 | Live, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `destruct`, `replace`, `get_mut`, `get_two_mut`, and `get_with_mark_mut` are never used [INFO] [stdout] --> loxii/src/memory.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 61 | impl Heap { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn destruct(&mut self, id: HeapId) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn replace(&mut self, id: HeapId, value: HeapValue) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn get_mut(&mut self, id: HeapId) -> Option<&mut HeapValue> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn get_two_mut( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn get_with_mark_mut(&mut self, id: HeapId) -> Option<&mut PageValue> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_block` and `drop_block` are never used [INFO] [stdout] --> loxii/src/memory.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl Stack { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn create_block(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn drop_block(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `clear`, `get_mut`, `get_two_mut`, and `replace` are never used [INFO] [stdout] --> loxii/src/memory.rs:253:8 [INFO] [stdout] | [INFO] [stdout] 219 | impl Page { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 253 | fn clear(&mut self, index: usize) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 265 | fn get_mut(&mut self, index: usize) -> Option<&mut PageValue> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | fn get_two_mut(&mut self, one: usize, two: usize) -> Option<(&mut HeapValue, &mut HeapValue)> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 285 | fn replace(&mut self, index: usize, value: HeapValue) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_string_mut` is never used [INFO] [stdout] --> loxii/src/memory.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 295 | impl HeapValue { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 296 | pub fn as_string_mut(&mut self) -> &mut String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gc` is never used [INFO] [stdout] --> loxii/src/memory.rs:311:8 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn gc(stack: &Stack, heap: &mut Heap) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Class`, `Instance`, and `Function` are never constructed [INFO] [stdout] --> loxii/src/value.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Value { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | Class(HeapId), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 15 | Instance(HeapId), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 16 | Function(HeapId, Option), // HeapId must be instance [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Value` 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: fields `id`, `class`, and `fields` are never read [INFO] [stdout] --> loxii/src/value.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Instance { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 29 | id: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 30 | class: HeapId, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 31 | fields: FxHashMap, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Instance` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LocalKind` is never used [INFO] [stdout] --> loxii/src/vm.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum LocalKind { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> loxii/src/value.rs:186:26 [INFO] [stdout] | [INFO] [stdout] 186 | Value::Class(id) => todo!(), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> loxii/src/value.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | Value::Instance(id) => todo!(), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> loxii/src/value.rs:188:29 [INFO] [stdout] | [INFO] [stdout] 188 | Value::Function(id, inst) => todo!(), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inst` [INFO] [stdout] --> loxii/src/value.rs:188:33 [INFO] [stdout] | [INFO] [stdout] 188 | Value::Function(id, inst) => todo!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_inst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxii/src/bytecode.rs:283:20 [INFO] [stdout] | [INFO] [stdout] 283 | pub fn display(&self) -> DisplayedBytecode { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 283 | pub fn display(&self) -> DisplayedBytecode<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `off` [INFO] [stdout] --> loxii/src/vm.rs:79:29 [INFO] [stdout] | [INFO] [stdout] 79 | LoadOp::Upvalue(off) => todo!(), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_off` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `off` [INFO] [stdout] --> loxii/src/vm.rs:96:30 [INFO] [stdout] | [INFO] [stdout] 96 | StoreOp::Upvalue(off) => todo!(), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_off` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Upvalue` is never constructed [INFO] [stdout] --> loxii/src/bytecode.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 122 | enum OpValue { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 123 | Pop, [INFO] [stdout] 124 | Upvalue, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `name`, and `loc` are never read [INFO] [stdout] --> loxii/src/bytecode.rs:151:5 [INFO] [stdout] | [INFO] [stdout] 150 | pub struct Chunk { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 151 | id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] 152 | name: ConstAddr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 153 | loc: Loc, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_be_bytes` is never used [INFO] [stdout] --> loxii/src/bytecode.rs:219:12 [INFO] [stdout] | [INFO] [stdout] 218 | impl ConstAddr { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 219 | pub fn to_be_bytes(self) -> [u8; size_of::()] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `emit_upvalue`, `emit_call`, and `is_global_chunk` are never used [INFO] [stdout] --> loxii/src/bytecode.rs:351:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl BytecodeBuilder { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 351 | pub fn emit_upvalue(&mut self) -> InstrAddr { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 457 | pub fn emit_call(&mut self, loc: Loc) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 498 | fn is_global_chunk(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `advance_slice` is never used [INFO] [stdout] --> loxii/src/bytecode.rs:548:8 [INFO] [stdout] | [INFO] [stdout] 503 | impl<'a> BytecodeReader<'a> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 548 | fn advance_slice(&mut self, size: usize) -> &'a [u8] { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `blocks` is never read [INFO] [stdout] --> loxii/src/memory.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Stack { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 12 | values: Vec, [INFO] [stdout] 13 | blocks: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Value` and `Instance` are never constructed [INFO] [stdout] --> loxii/src/memory.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub enum HeapValue { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 29 | Value(Value), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | String(String), [INFO] [stdout] 31 | Instance(Instance), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> loxii/src/memory.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct ValueId { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 42 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ValueId` 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 `mark` is never read [INFO] [stdout] --> loxii/src/memory.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 45 | struct PageValue { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 46 | value: HeapValue, [INFO] [stdout] 47 | mark: Mark, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Live` is never constructed [INFO] [stdout] --> loxii/src/memory.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 56 | enum Mark { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] 57 | Live, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `destruct`, `replace`, `get_mut`, `get_two_mut`, and `get_with_mark_mut` are never used [INFO] [stdout] --> loxii/src/memory.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 61 | impl Heap { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn destruct(&mut self, id: HeapId) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn replace(&mut self, id: HeapId, value: HeapValue) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn get_mut(&mut self, id: HeapId) -> Option<&mut HeapValue> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn get_two_mut( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn get_with_mark_mut(&mut self, id: HeapId) -> Option<&mut PageValue> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_block` and `drop_block` are never used [INFO] [stdout] --> loxii/src/memory.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl Stack { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn create_block(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn drop_block(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `clear`, `get_mut`, `get_two_mut`, and `replace` are never used [INFO] [stdout] --> loxii/src/memory.rs:253:8 [INFO] [stdout] | [INFO] [stdout] 219 | impl Page { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 253 | fn clear(&mut self, index: usize) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 265 | fn get_mut(&mut self, index: usize) -> Option<&mut PageValue> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | fn get_two_mut(&mut self, one: usize, two: usize) -> Option<(&mut HeapValue, &mut HeapValue)> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 285 | fn replace(&mut self, index: usize, value: HeapValue) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_string_mut` is never used [INFO] [stdout] --> loxii/src/memory.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 295 | impl HeapValue { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 296 | pub fn as_string_mut(&mut self) -> &mut String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gc` is never used [INFO] [stdout] --> loxii/src/memory.rs:311:8 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn gc(stack: &Stack, heap: &mut Heap) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Class`, `Instance`, and `Function` are never constructed [INFO] [stdout] --> loxii/src/value.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Value { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | Class(HeapId), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 15 | Instance(HeapId), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 16 | Function(HeapId, Option), // HeapId must be instance [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Value` 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: fields `id`, `class`, and `fields` are never read [INFO] [stdout] --> loxii/src/value.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Instance { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 29 | id: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 30 | class: HeapId, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 31 | fields: FxHashMap, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Instance` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LocalKind` is never used [INFO] [stdout] --> loxii/src/vm.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum LocalKind { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> loxii/src/bytecode.rs:283:20 [INFO] [stdout] | [INFO] [stdout] 283 | pub fn display(&self) -> DisplayedBytecode { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 283 | pub fn display(&self) -> DisplayedBytecode<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> loxii/src/main.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 62 | unimplemented!("soon REPL will be implemented"); [INFO] [stdout] | ----------------------------------------------- any code following this expression is unreachable [INFO] [stdout] 63 | ExitCode::SUCCESS [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> loxii/src/main.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 62 | unimplemented!("soon REPL will be implemented"); [INFO] [stdout] | ----------------------------------------------- any code following this expression is unreachable [INFO] [stdout] 63 | ExitCode::SUCCESS [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.97s [INFO] running `Command { std: "docker" "inspect" "608236cc1babeaca8c597cf03be4fbfe2d35210910ccfb014007ba8e309b1b73", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "608236cc1babeaca8c597cf03be4fbfe2d35210910ccfb014007ba8e309b1b73", kill_on_drop: false }` [INFO] [stdout] 608236cc1babeaca8c597cf03be4fbfe2d35210910ccfb014007ba8e309b1b73