[INFO] cloning repository https://github.com/HallerPatrick/liva-lang [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/HallerPatrick/liva-lang" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHallerPatrick%2Fliva-lang", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHallerPatrick%2Fliva-lang'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d6a0a90582881054546082d3c88bde6efc221cd9 [INFO] checking HallerPatrick/liva-lang/d6a0a90582881054546082d3c88bde6efc221cd9 against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHallerPatrick%2Fliva-lang" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/HallerPatrick/liva-lang on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/HallerPatrick/liva-lang [INFO] finished tweaking git repo https://github.com/HallerPatrick/liva-lang [INFO] tweaked toml for git repo https://github.com/HallerPatrick/liva-lang written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/HallerPatrick/liva-lang 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /workspace/builds/worker-6-tc1/source/vm/Cargo.toml [INFO] [stderr] workspace: /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pretty-trait v0.1.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2ceff7872ecf4ee550561d7c904013eb0f8b086ed5022b92eca98c3f406a8e1b [INFO] running `Command { std: "docker" "start" "-a" "2ceff7872ecf4ee550561d7c904013eb0f8b086ed5022b92eca98c3f406a8e1b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2ceff7872ecf4ee550561d7c904013eb0f8b086ed5022b92eca98c3f406a8e1b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2ceff7872ecf4ee550561d7c904013eb0f8b086ed5022b92eca98c3f406a8e1b", kill_on_drop: false }` [INFO] [stdout] 2ceff7872ecf4ee550561d7c904013eb0f8b086ed5022b92eca98c3f406a8e1b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2fc5ef9d5220353b8260a385474706666b2929e491e09d2cbe99138a0a3f0a56 [INFO] running `Command { std: "docker" "start" "-a" "2fc5ef9d5220353b8260a385474706666b2929e491e09d2cbe99138a0a3f0a56", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /opt/rustwide/workdir/vm/Cargo.toml [INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling version_check v0.9.3 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Compiling libc v0.2.107 [INFO] [stderr] Checking bytecount v0.6.2 [INFO] [stderr] Checking pretty-trait v0.1.2 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking unicode-width v0.1.9 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling nom v7.1.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking nom_locate v4.0.0 [INFO] [stderr] Checking liva_parser v0.1.0 (/opt/rustwide/workdir/parser) [INFO] [stdout] warning: duplicated attribute [INFO] [stdout] --> parser/src/parser/statement/declaration/function.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | #[test] [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(duplicate_macro_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking liva_vm v0.1.0 (/opt/rustwide/workdir/vm) [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> vm/src/value.rs:137:51 [INFO] [stdout] | [INFO] [stdout] 137 | (Value::Integer(x), Value::Integer(y)) => (x == y), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 137 - (Value::Integer(x), Value::Integer(y)) => (x == y), [INFO] [stdout] 137 + (Value::Integer(x), Value::Integer(y)) => x == y, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> vm/src/vm/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> vm/src/value.rs:137:51 [INFO] [stdout] | [INFO] [stdout] 137 | (Value::Integer(x), Value::Integer(y)) => (x == y), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 137 - (Value::Integer(x), Value::Integer(y)) => (x == y), [INFO] [stdout] 137 + (Value::Integer(x), Value::Integer(y)) => x == y, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> vm/src/vm/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hasher` [INFO] [stdout] --> vm/src/value.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::hash::Hasher; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `import` [INFO] [stdout] --> vm/src/compiler/statements.rs:29:31 [INFO] [stdout] | [INFO] [stdout] 29 | Statement::Import(import) => {} [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_import` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hasher` [INFO] [stdout] --> vm/src/value.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::hash::Hasher; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `import` [INFO] [stdout] --> vm/src/compiler/statements.rs:29:31 [INFO] [stdout] | [INFO] [stdout] 29 | Statement::Import(import) => {} [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_import` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> vm/src/compiler/mod.rs:391:29 [INFO] [stdout] | [INFO] [stdout] 391 | Collection::Map(map) => {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message` [INFO] [stdout] --> vm/src/compiler/mod.rs:576:49 [INFO] [stdout] | [INFO] [stdout] 576 | fn parse_variable(&mut self, str_val: &str, error_message: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> vm/src/compiler/mod.rs:391:29 [INFO] [stdout] | [INFO] [stdout] 391 | Collection::Map(map) => {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message` [INFO] [stdout] --> vm/src/compiler/mod.rs:576:49 [INFO] [stdout] | [INFO] [stdout] 576 | fn parse_variable(&mut self, str_val: &str, error_message: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `iter` [INFO] [stdout] --> vm/src/vm/mod.rs:910:25 [INFO] [stdout] | [INFO] [stdout] 910 | let iter = match iterable { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `iter` [INFO] [stdout] --> vm/src/vm/mod.rs:910:25 [INFO] [stdout] | [INFO] [stdout] 910 | let iter = match iterable { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> vm/src/vm/mod.rs:912:33 [INFO] [stdout] | [INFO] [stdout] 912 | ... let mut iterator = Iterable { iter: list }; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> vm/src/vm/mod.rs:912:33 [INFO] [stdout] | [INFO] [stdout] 912 | ... let mut iterator = Iterable { iter: list }; [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: `primitve_objects` [INFO] [stdout] --> vm/src/main.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let primitve_objects = PrimitiveObjects::new(&mut store); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_primitve_objects` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> vm/src/main.rs:111:19 [INFO] [stdout] | [INFO] [stdout] 111 | fn call_main_code(state: &mut VMState, module: LvObjectRef) {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `module` [INFO] [stdout] --> vm/src/main.rs:111:40 [INFO] [stdout] | [INFO] [stdout] 111 | fn call_main_code(state: &mut VMState, module: LvObjectRef) {} [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_main_code` is never used [INFO] [stdout] --> vm/src/main.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn call_main_code(state: &mut VMState, module: LvObjectRef) {} [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `end_scope` and `get_variable` are never used [INFO] [stdout] --> vm/src/compiler/mod.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 65 | impl Compiler { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 156 | fn end_scope(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | fn get_variable(&mut self, prefix_expr: PrefixExpr) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `GetSuper`, `CallGlobal`, `Invoke`, and `LoadMethod` are never constructed [INFO] [stdout] --> vm/src/op_codes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum OpCode { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | GetSuper(usize), // ^ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 10 | CallGlobal(usize, usize), // A combination of OpCall and OpGetGlobal [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 15 | Invoke(usize, usize), // Combines a GetProperty and a Call. Contains the exact same information. First usize is the index for the pro... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 16 | // This will replace `GetProperty` [INFO] [stdout] 17 | LoadMethod(usize), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `lv_stack` is never read [INFO] [stdout] --> vm/src/vm/mod.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub struct VMState { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 57 | lv_stack: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `get_id` and `new_version` are never used [INFO] [stdout] --> vm/src/vm/object.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl LvObjectRef { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn get_id(&self) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn new_version() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `version`, `name`, `data`, `class`, `bases`, and `attributes` are never read [INFO] [stdout] --> vm/src/vm/object.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct LvObject { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 52 | pub version: u64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 53 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 54 | pub data: ObjectData, [INFO] [stdout] | ^^^^ [INFO] [stdout] 55 | pub class: LvObjectRef, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | pub bases: Option>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 57 | pub attributes: Option>>>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Code` is never constructed [INFO] [stdout] --> vm/src/vm/object.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Code { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `LvString`, `LvNum`, `LvList`, `LvMap`, `Function`, and `Module` are never constructed [INFO] [stdout] --> vm/src/vm/object.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub enum ObjectData { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 109 | LvString(String), // Actual rust string [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 110 | LvNum(f64), // Actual float [INFO] [stdout] | ^^^^^ [INFO] [stdout] 111 | LvList(Vec), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 112 | LvMap(Vec<(LvObjectRef, LvObjectRef)>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 113 | Function(String, LvObjectRef, HashMap), // module, code, default arguments [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 114 | Module(LvObjectRef), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `deref` and `deref_mut` are never used [INFO] [stdout] --> vm/src/vm/object.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 124 | impl ObjectStore { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn deref(&mut self, obj_ref: LvObjectRef) -> &LvObject { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn deref_mut(&mut self, obj_ref: LvObjectRef) -> &mut LvObject { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> vm/src/vm/object.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct PrimitiveObjects { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 155 | pub object: LvObjectRef, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 156 | pub type_: LvObjectRef, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 157 | [INFO] [stdout] 158 | pub nil_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 159 | pub nil: LvObjectRef, [INFO] [stdout] | ^^^ [INFO] [stdout] 160 | [INFO] [stdout] 161 | pub int_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 162 | pub bool_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 163 | pub true_obj: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 164 | pub false_obj: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub list_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub dict_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub str_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 175 | [INFO] [stdout] 176 | pub iterator_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 177 | [INFO] [stdout] 178 | pub function_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 179 | // pub code_type: LvObjectRef, [INFO] [stdout] 180 | pub module: LvObjectRef, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `new_int`, `new_string`, `new_list`, `new_dict`, `new_function`, and `new_module` are never used [INFO] [stdout] --> vm/src/vm/object.rs:446:12 [INFO] [stdout] | [INFO] [stdout] 196 | impl PrimitiveObjects { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 446 | pub fn new_int(&self, i: u32) -> LvObject { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 449 | pub fn new_string(&self, s: String) -> LvObject { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 458 | pub fn new_list(&self, v: Vec) -> LvObject { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | pub fn new_dict(&self, v: Vec<(LvObjectRef, LvObjectRef)>) -> LvObject { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 481 | pub fn new_function( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 494 | pub fn new_module(&self, name: String, code: LvObjectRef) -> LvObject { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LivaFunction` is never used [INFO] [stdout] --> vm/src/vm/state.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub type LivaFunction = fn(&mut State, &mut Vec, Vec); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `State` is never constructed [INFO] [stdout] --> vm/src/vm/state.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct State { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `primitve_objects` [INFO] [stdout] --> vm/src/main.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let primitve_objects = PrimitiveObjects::new(&mut store); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_primitve_objects` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> vm/src/main.rs:111:19 [INFO] [stdout] | [INFO] [stdout] 111 | fn call_main_code(state: &mut VMState, module: LvObjectRef) {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `module` [INFO] [stdout] --> vm/src/main.rs:111:40 [INFO] [stdout] | [INFO] [stdout] 111 | fn call_main_code(state: &mut VMState, module: LvObjectRef) {} [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_main_code` is never used [INFO] [stdout] --> vm/src/main.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn call_main_code(state: &mut VMState, module: LvObjectRef) {} [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `end_scope` and `get_variable` are never used [INFO] [stdout] --> vm/src/compiler/mod.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 65 | impl Compiler { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 156 | fn end_scope(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | fn get_variable(&mut self, prefix_expr: PrefixExpr) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `GetSuper`, `CallGlobal`, `Invoke`, and `LoadMethod` are never constructed [INFO] [stdout] --> vm/src/op_codes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum OpCode { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | GetSuper(usize), // ^ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 10 | CallGlobal(usize, usize), // A combination of OpCall and OpGetGlobal [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 15 | Invoke(usize, usize), // Combines a GetProperty and a Call. Contains the exact same information. First usize is the index for the pro... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 16 | // This will replace `GetProperty` [INFO] [stdout] 17 | LoadMethod(usize), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `lv_stack` is never read [INFO] [stdout] --> vm/src/vm/mod.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub struct VMState { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 57 | lv_stack: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `get_id` and `new_version` are never used [INFO] [stdout] --> vm/src/vm/object.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl LvObjectRef { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn get_id(&self) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn new_version() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `version`, `name`, `data`, `class`, `bases`, and `attributes` are never read [INFO] [stdout] --> vm/src/vm/object.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct LvObject { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 52 | pub version: u64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 53 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 54 | pub data: ObjectData, [INFO] [stdout] | ^^^^ [INFO] [stdout] 55 | pub class: LvObjectRef, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | pub bases: Option>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 57 | pub attributes: Option>>>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Code` is never constructed [INFO] [stdout] --> vm/src/vm/object.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Code { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `LvString`, `LvNum`, `LvList`, `LvMap`, `Function`, and `Module` are never constructed [INFO] [stdout] --> vm/src/vm/object.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub enum ObjectData { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 109 | LvString(String), // Actual rust string [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 110 | LvNum(f64), // Actual float [INFO] [stdout] | ^^^^^ [INFO] [stdout] 111 | LvList(Vec), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 112 | LvMap(Vec<(LvObjectRef, LvObjectRef)>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 113 | Function(String, LvObjectRef, HashMap), // module, code, default arguments [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 114 | Module(LvObjectRef), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `deref` and `deref_mut` are never used [INFO] [stdout] --> vm/src/vm/object.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 124 | impl ObjectStore { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn deref(&mut self, obj_ref: LvObjectRef) -> &LvObject { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn deref_mut(&mut self, obj_ref: LvObjectRef) -> &mut LvObject { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> vm/src/main.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | print_ast(file); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 46 | let _ = print_ast(file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> vm/src/vm/object.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct PrimitiveObjects { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 155 | pub object: LvObjectRef, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 156 | pub type_: LvObjectRef, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 157 | [INFO] [stdout] 158 | pub nil_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 159 | pub nil: LvObjectRef, [INFO] [stdout] | ^^^ [INFO] [stdout] 160 | [INFO] [stdout] 161 | pub int_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 162 | pub bool_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 163 | pub true_obj: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 164 | pub false_obj: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub list_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub dict_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub str_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 175 | [INFO] [stdout] 176 | pub iterator_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 177 | [INFO] [stdout] 178 | pub function_type: LvObjectRef, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 179 | // pub code_type: LvObjectRef, [INFO] [stdout] 180 | pub module: LvObjectRef, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `new_int`, `new_string`, `new_list`, `new_dict`, `new_function`, and `new_module` are never used [INFO] [stdout] --> vm/src/vm/object.rs:446:12 [INFO] [stdout] | [INFO] [stdout] 196 | impl PrimitiveObjects { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 446 | pub fn new_int(&self, i: u32) -> LvObject { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 449 | pub fn new_string(&self, s: String) -> LvObject { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 458 | pub fn new_list(&self, v: Vec) -> LvObject { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | pub fn new_dict(&self, v: Vec<(LvObjectRef, LvObjectRef)>) -> LvObject { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 481 | pub fn new_function( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 494 | pub fn new_module(&self, name: String, code: LvObjectRef) -> LvObject { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LivaFunction` is never used [INFO] [stdout] --> vm/src/vm/state.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub type LivaFunction = fn(&mut State, &mut Vec, Vec); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `State` is never constructed [INFO] [stdout] --> vm/src/vm/state.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct State { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> vm/src/main.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | print_ast(file); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 46 | let _ = print_ast(file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 25 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 25 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.86s [INFO] running `Command { std: "docker" "inspect" "2fc5ef9d5220353b8260a385474706666b2929e491e09d2cbe99138a0a3f0a56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2fc5ef9d5220353b8260a385474706666b2929e491e09d2cbe99138a0a3f0a56", kill_on_drop: false }` [INFO] [stdout] 2fc5ef9d5220353b8260a385474706666b2929e491e09d2cbe99138a0a3f0a56