[INFO] cloning repository https://github.com/samgiles/naulang-runtime [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/samgiles/naulang-runtime" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamgiles%2Fnaulang-runtime", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamgiles%2Fnaulang-runtime'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6b5125929e2af5e7a6cb8c30418dd0db73b5ff0b [INFO] checking samgiles/naulang-runtime against try#998b6603a58e47f42ccce7a67943234e96b6839e for pr-143170 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamgiles%2Fnaulang-runtime" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/samgiles/naulang-runtime [INFO] finished tweaking git repo https://github.com/samgiles/naulang-runtime [INFO] tweaked toml for git repo https://github.com/samgiles/naulang-runtime written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/samgiles/naulang-runtime on toolchain 998b6603a58e47f42ccce7a67943234e96b6839e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/samgiles/naulang-runtime 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" "+998b6603a58e47f42ccce7a67943234e96b6839e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d60039b5a7736b455a0771fc125df0f1c13b9199d3039d54bd7ac5d3e2c6e8cb [INFO] running `Command { std: "docker" "start" "-a" "d60039b5a7736b455a0771fc125df0f1c13b9199d3039d54bd7ac5d3e2c6e8cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d60039b5a7736b455a0771fc125df0f1c13b9199d3039d54bd7ac5d3e2c6e8cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d60039b5a7736b455a0771fc125df0f1c13b9199d3039d54bd7ac5d3e2c6e8cb", kill_on_drop: false }` [INFO] [stdout] d60039b5a7736b455a0771fc125df0f1c13b9199d3039d54bd7ac5d3e2c6e8cb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e17c68a55c67cacc0fcdef0ffe206c37684af6a1a769d059641c41ac38c45e74 [INFO] running `Command { std: "docker" "start" "-a" "e17c68a55c67cacc0fcdef0ffe206c37684af6a1a769d059641c41ac38c45e74", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Checking naulang_runtime v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `is_async` [INFO] [stdout] --> src/naulang/objectspace/method.rs:40:70 [INFO] [stdout] | [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_async` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/main.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let frame = Frame::new(FrameInfo { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `String`, `Integer`, `Float`, `Boolean`, `Array`, and `Method` are never constructed [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Object<'o> { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 6 | String(StringObject), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 7 | Integer(IntegerObject), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 8 | Float(FloatObject), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Boolean(BooleanObject), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 10 | Array(ArrayObject<'o>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | Method(MethodObject<'o>), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Object` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct ArrayObject<'a> { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 17 | pub value: vec::Vec>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ArrayObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct BooleanObject { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 22 | pub value: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BooleanObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct StringObject { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 27 | pub value: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StringObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct IntegerObject { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 32 | pub value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IntegerObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_value` are never used [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl IntegerObject { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 36 | pub fn new(value: i32) -> IntegerObject { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn get_value(&self) -> i32 { self.value } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct FloatObject { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 47 | pub value: f32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FloatObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `literals`, `stack_depth`, `bytecodes`, and `arg_count` are never read [INFO] [stdout] --> src/naulang/objectspace/method.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct MethodObject<'m> { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 9 | pub literals: &'m vec::Vec>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 10 | pub stack_depth: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 11 | bytecodes: vec::Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | arg_count: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MethodObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_bytecode`, `get_literal_at`, and `create_new_frame` are never used [INFO] [stdout] --> src/naulang/objectspace/method.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl<'m> MethodObject<'m> { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn get_bytecode(&self, at_point: usize) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOAD_CONST` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | pub const LOAD_CONST :u32 = 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOAD` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | pub const LOAD :u32 = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STORE` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | pub const STORE :u32 = 3; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OR` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | pub const OR :u32 = 4; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AND` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | pub const AND :u32 = 5; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EQUAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub const EQUAL :u32 = 6; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOT_EQUAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub const NOT_EQUAL :u32 = 7; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LESS_THAN` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | pub const LESS_THAN :u32 = 8; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LESS_THAN_EQ` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub const LESS_THAN_EQ :u32 = 9; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREATER_THAN` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 15 | pub const GREATER_THAN :u32 = 10; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREATER_THAN_EQ` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub const GREATER_THAN_EQ :u32 = 11; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ADD` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:17:15 [INFO] [stdout] | [INFO] [stdout] 17 | pub const ADD :u32 = 12; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUB` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | pub const SUB :u32 = 13; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MUL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | pub const MUL :u32 = 14; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIV` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 20 | pub const DIV :u32 = 15; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOT` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | pub const NOT :u32 = 16; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NEG` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | pub const NEG :u32 = 17; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JUMP_IF_FALSE` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:23:15 [INFO] [stdout] | [INFO] [stdout] 23 | pub const JUMP_IF_FALSE :u32 = 18; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JUMP` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:24:15 [INFO] [stdout] | [INFO] [stdout] 24 | pub const JUMP :u32 = 19; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRINT` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub const PRINT :u32 = 20; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVOKE` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:26:15 [INFO] [stdout] | [INFO] [stdout] 26 | pub const INVOKE :u32 = 21; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RETURN` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:27:15 [INFO] [stdout] | [INFO] [stdout] 27 | pub const RETURN :u32 = 22; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY_LOAD` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const ARRAY_LOAD :u32 = 23; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY_STORE` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 29 | pub const ARRAY_STORE :u32 = 24; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STORE_DYNAMIC` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:30:15 [INFO] [stdout] | [INFO] [stdout] 30 | pub const STORE_DYNAMIC :u32 = 25; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOAD_DYNAMIC` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub const LOAD_DYNAMIC :u32 = 26; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVOKE_GLOBAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 32 | pub const INVOKE_GLOBAL :u32 = 27; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MOD` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:33:15 [INFO] [stdout] | [INFO] [stdout] 33 | pub const MOD :u32 = 28; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COPY_LOCAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | pub const COPY_LOCAL :u32 = 29; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DUP` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 35 | pub const DUP :u32 = 30; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVOKE_ASYNC` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:36:15 [INFO] [stdout] | [INFO] [stdout] 36 | pub const INVOKE_ASYNC :u32 = 31; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CHAN_OUT` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | pub const CHAN_OUT :u32 = 32; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CHAN_IN` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 38 | pub const CHAN_IN :u32 = 33; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `literal_count` is never read [INFO] [stdout] --> src/naulang/interpreter/frame.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct FrameInfo<'fi> { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 8 | pub literal_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `previous_frame`, `method`, `pc`, `stack`, and `access_link` are never read [INFO] [stdout] --> src/naulang/interpreter/frame.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Frame<'f> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 14 | pub previous_frame: Option>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 15 | pub method: &'f MethodObject<'f>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 16 | pub pc: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 17 | [INFO] [stdout] 18 | stack: vec::Vec>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | access_link: Option>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Frame` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/naulang/interpreter/frame.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl<'f> Frame<'f> { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn pop(&mut self) -> Option> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn push(&mut self, object: Object<'f>) -> () { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn peek(&self) -> Option<&Object> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn stack_height(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn set_local_at(&mut self, index: usize, object: Object<'f>) -> () { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn get_local_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TaskState` is never used [INFO] [stdout] --> src/naulang/interpreter/task.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum TaskState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Task` is never constructed [INFO] [stdout] --> src/naulang/interpreter/task.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Task<'task> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `new_withframe`, `restore_previous_frame_or_halt`, and `set_parent_task` are never used [INFO] [stdout] --> src/naulang/interpreter/task.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl<'task> Task<'task> { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 24 | pub fn new() -> Task<'task> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn new_withframe(frame: &'task Box, parent_task: Option>>) -> Task<'task> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn restore_previous_frame_or_halt(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn set_parent_task(&mut self, task: Task<'task>) -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `interpreter_step` is never used [INFO] [stdout] --> src/naulang/interpreter/interpreter.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn interpreter_step(task: &mut Task) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_interpreter_step` is never used [INFO] [stdout] --> src/naulang/interpreter/interpreter.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn run_interpreter_step(frame: &Box, task: &mut Task) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/objectspace/method.rs:35:27 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 35 | pub fn get_literal_at(&self, index: usize) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/objectspace/method.rs:40:30 [INFO] [stdout] | [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box { [INFO] [stdout] | ^^ ^^ ----- the lifetime gets resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | these lifetimes flow to the output [INFO] [stdout] | these lifetimes flow to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Bytecode` should have a snake case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod Bytecode { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `bytecode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `_stack_effect_depends_on_args` should have an upper case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | const _stack_effect_depends_on_args: i32 = -9999; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 3 - const _stack_effect_depends_on_args: i32 = -9999; [INFO] [stdout] 3 + const _STACK_EFFECT_DEPENDS_ON_ARGS: i32 = -9999; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `stack_effects` should have an upper case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | const stack_effects: [i32; 34] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 78 - const stack_effects: [i32; 34] = [ [INFO] [stdout] 78 + const STACK_EFFECTS: [i32; 34] = [ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `bytecode_lengths` should have an upper case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:115:11 [INFO] [stdout] | [INFO] [stdout] 115 | const bytecode_lengths: [usize; 34] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 115 - const bytecode_lengths: [usize; 34] = [ [INFO] [stdout] 115 + const BYTECODE_LENGTHS: [usize; 34] = [ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/interpreter/frame.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn peek(&self) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 53 | pub fn peek(&self) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/interpreter/frame.rs:66:25 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn get_local_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | pub fn get_local_at(&self, index: usize) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/interpreter/frame.rs:70:27 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 70 | pub fn get_literal_at(&self, index: usize) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_async` [INFO] [stdout] --> src/naulang/objectspace/method.rs:40:70 [INFO] [stdout] | [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_async` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/naulang/interpreter/interpreter.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | let mut load_const_method = MethodObject::new(vec!( [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: unused variable: `frame` [INFO] [stdout] --> src/main.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let frame = Frame::new(FrameInfo { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `String`, `Float`, `Boolean`, `Array`, and `Method` are never constructed [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Object<'o> { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 6 | String(StringObject), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 7 | Integer(IntegerObject), [INFO] [stdout] 8 | Float(FloatObject), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Boolean(BooleanObject), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 10 | Array(ArrayObject<'o>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | Method(MethodObject<'o>), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Object` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct ArrayObject<'a> { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 17 | pub value: vec::Vec>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ArrayObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct BooleanObject { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 22 | pub value: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BooleanObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct StringObject { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 27 | pub value: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StringObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/naulang/objectspace/primitives.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct FloatObject { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 47 | pub value: f32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FloatObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stack_depth` and `arg_count` are never read [INFO] [stdout] --> src/naulang/objectspace/method.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct MethodObject<'m> { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 9 | pub literals: &'m vec::Vec>, [INFO] [stdout] 10 | pub stack_depth: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 11 | bytecodes: vec::Vec, [INFO] [stdout] 12 | arg_count: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MethodObject` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `create_new_frame` is never used [INFO] [stdout] --> src/naulang/objectspace/method.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl<'m> MethodObject<'m> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OR` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | pub const OR :u32 = 4; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AND` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | pub const AND :u32 = 5; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EQUAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub const EQUAL :u32 = 6; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOT_EQUAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub const NOT_EQUAL :u32 = 7; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LESS_THAN` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | pub const LESS_THAN :u32 = 8; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LESS_THAN_EQ` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub const LESS_THAN_EQ :u32 = 9; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREATER_THAN_EQ` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub const GREATER_THAN_EQ :u32 = 11; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUB` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | pub const SUB :u32 = 13; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MUL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | pub const MUL :u32 = 14; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIV` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 20 | pub const DIV :u32 = 15; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOT` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | pub const NOT :u32 = 16; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NEG` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | pub const NEG :u32 = 17; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRINT` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub const PRINT :u32 = 20; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVOKE` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:26:15 [INFO] [stdout] | [INFO] [stdout] 26 | pub const INVOKE :u32 = 21; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RETURN` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:27:15 [INFO] [stdout] | [INFO] [stdout] 27 | pub const RETURN :u32 = 22; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY_LOAD` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const ARRAY_LOAD :u32 = 23; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY_STORE` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 29 | pub const ARRAY_STORE :u32 = 24; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STORE_DYNAMIC` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:30:15 [INFO] [stdout] | [INFO] [stdout] 30 | pub const STORE_DYNAMIC :u32 = 25; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOAD_DYNAMIC` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub const LOAD_DYNAMIC :u32 = 26; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVOKE_GLOBAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 32 | pub const INVOKE_GLOBAL :u32 = 27; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MOD` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:33:15 [INFO] [stdout] | [INFO] [stdout] 33 | pub const MOD :u32 = 28; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COPY_LOCAL` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | pub const COPY_LOCAL :u32 = 29; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DUP` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 35 | pub const DUP :u32 = 30; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVOKE_ASYNC` is never used [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:36:15 [INFO] [stdout] | [INFO] [stdout] 36 | pub const INVOKE_ASYNC :u32 = 31; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `literal_count` is never read [INFO] [stdout] --> src/naulang/interpreter/frame.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct FrameInfo<'fi> { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 8 | pub literal_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `access_link` is never read [INFO] [stdout] --> src/naulang/interpreter/frame.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Frame<'f> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | access_link: Option>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Frame` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_literal_at` is never used [INFO] [stdout] --> src/naulang/interpreter/frame.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl<'f> Frame<'f> { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Yield` and `Suspend` are never constructed [INFO] [stdout] --> src/naulang/interpreter/task.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum TaskState { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | Yield, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | Suspend, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/objectspace/method.rs:35:27 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 35 | pub fn get_literal_at(&self, index: usize) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/objectspace/method.rs:40:30 [INFO] [stdout] | [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box { [INFO] [stdout] | ^^ ^^ ----- the lifetime gets resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | these lifetimes flow to the output [INFO] [stdout] | these lifetimes flow to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 40 | fn create_new_frame<'a>(&'a self, mut previous_frame: Frame<'a>, is_async: bool) -> Box> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Bytecode` should have a snake case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod Bytecode { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `bytecode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `_stack_effect_depends_on_args` should have an upper case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | const _stack_effect_depends_on_args: i32 = -9999; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 3 - const _stack_effect_depends_on_args: i32 = -9999; [INFO] [stdout] 3 + const _STACK_EFFECT_DEPENDS_ON_ARGS: i32 = -9999; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `stack_effects` should have an upper case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | const stack_effects: [i32; 34] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 78 - const stack_effects: [i32; 34] = [ [INFO] [stdout] 78 + const STACK_EFFECTS: [i32; 34] = [ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `bytecode_lengths` should have an upper case name [INFO] [stdout] --> src/naulang/interpreter/bytecode.rs:115:11 [INFO] [stdout] | [INFO] [stdout] 115 | const bytecode_lengths: [usize; 34] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 115 - const bytecode_lengths: [usize; 34] = [ [INFO] [stdout] 115 + const BYTECODE_LENGTHS: [usize; 34] = [ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/interpreter/frame.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn peek(&self) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 53 | pub fn peek(&self) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/interpreter/frame.rs:66:25 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn get_local_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | pub fn get_local_at(&self, index: usize) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/naulang/interpreter/frame.rs:70:27 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn get_literal_at(&self, index: usize) -> Option<&Object> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 70 | pub fn get_literal_at(&self, index: usize) -> Option<&Object<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.47s [INFO] running `Command { std: "docker" "inspect" "e17c68a55c67cacc0fcdef0ffe206c37684af6a1a769d059641c41ac38c45e74", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e17c68a55c67cacc0fcdef0ffe206c37684af6a1a769d059641c41ac38c45e74", kill_on_drop: false }` [INFO] [stdout] e17c68a55c67cacc0fcdef0ffe206c37684af6a1a769d059641c41ac38c45e74